Operações com dados em TypeScript

TypeScript, ao contrário de outras linguagens com tipagem rigorosa, permite realizar operações com diferentes tipos de dados, sem convertê-los para um tipo comum.

Vamos ver com um exemplo o que isso significa. Suponha que temos uma variável string e uma numérica:

typescriptlet test1: number = 123;
let test2: string = 'abc';

Vamos realizar a soma dessas variáveis:

typescriptconsole.log(test1 + test2); // exibirá '123abc'

Ou seja, é possível somar, por exemplo, strings e números, e isso não resultará em um erro. Ou seja, o TypeScript apenas verifica se o programador não alterou o tipo de dado da variável.

Como exemplo, no código a seguir tentaremos atribuir uma string a uma variável numérica e isso já resultará em um erro:

typescriptlet test1: number = 123;
let test2: string = 'abc';
let test3: number;

test3 = test1 + test2; // tentando atribuir uma string
Задание 1

Sem executar o código, determine qual será o resultado da execução do código:

typescriptlet test1: number = 123;
let test2: number = 456;

console.log(test1 + test2);
Задание 2

Sem executar o código, determine qual será o resultado da execução do código:

typescriptlet test1: string = '123';
let test2: string = '456';

console.log(test1 + test2);
Задание 3

Sem executar o código, determine qual será o resultado da execução do código:

typescriptlet test1: string = '123';
let test2: string = '456';

let test3: number = test1 + test2;
console.log(test3);
Задание 4

Sem executar o código, determine qual será o resultado da execução do código:

typescriptlet test1: number = 123;
let test2: number = 456;

let test3: string = test1 + test2;
console.log(test3);
Задание 5

Sem executar o código, determine qual será o resultado da execução do código:

typescriptlet test1: number = 123;
let test2: number = 456;

let test3: string = test1 + ' ' + test2;
console.log(test3);
Задание 6

Sem executar o código, determine qual será o resultado da execução do código:

typescriptlet test1: number = 123;
let test2: number = 456;
let test3: string = '!';

let test4: string = test1 + test2 + test3;
console.log(test4);
Задание 7

Sem executar o código, determine qual será o resultado da execução do código:

typescriptlet test1: number = '123';
let test2: number = '456';

console.log(test1 + test2);
Задание 8

Sem executar o código, determine qual será o resultado da execução do código:

typescriptlet test1: number = +'123';
let test2: number = +'456';

console.log(test1 + test2);
Задание 9

Sem executar o código, determine qual será o resultado da execução do código:

typescriptlet test: string = '1';
test += 1;

console.log(test);