Dando continuidade a minha série de artigos sobre TypeScript, nesse artigo apresentarei suas formas tipagens.
Variáveis
Diferente de quando nós trabalhávamos com .js, as variáveis no TypeScript devem ser tipadas. Veja abaixo alguns exemplos:
Boolean
Como nas outras linguagens tipadas, ele somente suporta true or false.
var ativo : boolean = false;
Number
O tipo number só aceita números.
var idade : number = 32;
String
var nome : string = "Bill Gates";
Array
Com array, nós trabalhamos com coleções de objetos ou variáveis da mesma forma que no JavaScript, utilizando as chaves [].
var frutas : string[] = ["pera" ,"uva", "banana"];
Enum
Esse é novo. Digo, novo pra quem trabalha com JavaScript. O tipo Enum (enumeração) é ideal para trabalhar com listas, mas com a utilização de chaves nos elementos. Caso tenha interesse em saber um pouco mais sobre Enums, segue link de um artigo, que eu escrevi sobre esse assunto: TypeScript Enums.
enum temperatura {quente,frio,morno}; console.log(temperatura.quente)
Executando o código acima, nós iremos receber o valor 0. Isso ocorre porque, por padrão, o TypeScript trabalha com o valor inicial 0.
Para ficar um pouco mais claro, veja mais um exemplo:
enum temperatura {quente =1,frio,morno}; console.log(temperatura.frio)
Como no exemplo acima, nós estamos passando o valor 1 para o primeiro item. O compilador passará os valores 1, 2 e 3 para os outros valores. Isso acontece porque o TypeScript trabalha com auto increment.
Any
Muitas vezes não podemos forçar o tipo de um determinado dado, alguns cenários como o retorno de uma API de terceiros. Em cenários como esse, você pode rotular sua variável ou objeto com o tipo “any”, assim ela vai aceitar qualquer valor. Veja abaixo um exemplo:
var valorInicial : any = ["valor 1","valor 2", 13]; valorInicial = 18; valorInicial = "XPTO";
Como você pode observar, a nossa variável inicia com um array, em seguida recebe um number e no final nós alteramos ela para uma string. Esse é um contexto bem estranho e acredito que difícil de ocorrer, mas caso aconteça, podemos contar com o any.
Funções
Void
Ao contrário do “any” (qualquer tipo de dado), você pode especificar um tipo void (nenhum tipo de dado). Ele é muito usado em funções, para informar que ela não retorna nada.
function message(): void { alert("hey ho let's go"); }
Retorno de dados
Como vimos no item anterior, também podemos informar um tipo para o retorno das nossas funções.
function isChecked(): boolean { return true; }
No exemplo acima, sempre podemos esperar que a nossa função retorne um boolean.
Bom, com isso terminamos mais um artigo sobre .ts.