Desenvolvimento

13 mar, 2018

TypeScript: Tipagem

Publicidade

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.