ilustrar
O TypeScript oferece suporte a quase os mesmos tipos de dados do JavaScript e também fornece tipos de dados adicionais
valor booleano
const flag: boolean = true;
número
onst count: number = 10;
corda
Aspas simples, aspas duplas e strings de modelo podem representar strings
const name: string = 'Jack';
const address = "北京朝阳";
const info: string = `我是${name},来自${address}`;
variedade
Operar arrays da mesma forma que o JavaScript, definido das duas maneiras a seguir
const arr1: string[] = ['苹果', '橘子'];
const arr2:Array<number> = [1, 2, 3];
tupla
Defina uma matriz de elementos e tipos conhecidos, os tipos de elemento e a ordem de definição devem ser consistentes
const arr1: [number, string] = [1, '水果'];
const arr2: [string, number] = [1, '水果']; // 提示类型不匹配
enumerar
O tipo enum é um complemento adicional ao tipo de dados JavaS. Por padrão, ele é classificado de 0
enum Colors {
Red, Green, Blue
}
console.log(Colors.Red) // 0
console.log(Colors[1]) // Gree
Você também pode especificar manualmente o número de um membro ou especificar o número de todos os membros
enum Colors {
Red=1, Green, Blue
}
console.log(Colors.Red) // 1
console.log(Colors[3]) // Gree
Qualquer tipo
Indica que os dados podem ser de qualquer tipo de dados. Quando o tipo de dados atual não estiver claro, use qualquer definição para pular a verificação de tipo em tempo de compilação
let anyData: any = 4;
let anyArray: Array<any> = ['1', 1, {name: 'Jack'}]
Vazio
Indica que não há nenhum tipo de dados e geralmente é usado em valores de retorno de função
function testVoid():void{
console.log('testVoid')
}
Nulo e Indefinido
O tipo não é muito útil e o significado é consistente com nulo e indefinido em JavaScript
Nunca
O tipo never representa um tipo de valor que nunca existe. O tipo never é um subtipo de qualquer tipo e é atribuível a qualquer tipo; no entanto, nenhum tipo é um subtipo ou atribuível ao tipo never (exceto o próprio never). Mesmo qualquer não pode ser atribuído a nunca.
Objeto
objeto é um tipo de dados não primitivo e é um tipo diferente de número, string, booleano, símbolo, nulo ou indefinido
tipo de afirmação
Quando uma variável pode ter vários tipos de dados ou definir qualquer tipo, ela é usada quando precisamos fazer diferentes processamentos de negócios de acordo com diferentes tipos.
Nota oficial:
Às vezes, você se depara com uma situação em que sabe mais sobre os detalhes de um valor do que o TypeScript. Geralmente isso acontece quando você sabe claramente que uma entidade possui um tipo mais específico do que já possui.
Esta é a maneira de dizer ao compilador, "confie em mim, eu sei o que estou fazendo" por meio de declarações de tipo. Asserções de tipo são como conversões de tipo em outras linguagens, mas sem verificação e desestruturação de dados especiais. Não tem impacto em tempo de execução, funciona apenas durante a fase de compilação. O TypeScript assume que você, o programador, realizou as verificações necessárias.
Duas formas de declaração de tipo: sintaxe "colchetes angulares" e como sintaxe
const anyData = '类型断言'
const len1: number = (<string>anyData).length
const len2: number = (anyData as string).length