参考文档:Basic Types
先来复习一下 javascript 当中的简单类型,或者叫做原始数据类型(primitive values):
其中 BigInt 和 Symbol 是 ES6 之后加入的新类型。
typescript 最简单的作用就是强调了 javascript 中的类型,其语法如下:
// Boolean
let isDone: boolean = false;
// 接下来来到 number,注意 es6 还支持2进制和8进制,让我们来感受下
let age: number = 10;
let binaryNumber: number = 0b1111;
// 之后是字符串,注意 es6 新增的模版字符串也是没有问题的
let firstName: string = 'kevyn';
let message: string = `Hello, ${firstName}, age is ${age}`;
// undefined 和 null
let u: undefined = undefined;
let n: null = null;
// 注意 undefined 和 null 是所有类型的子类型。也就是说 undefined 类型的变量,可以赋值给 number 类型的变量:
let num: number = undefined;
🅰️:类型声明的一大好处就是,我们可以像写 java 一样获得代码联想了,像 string.length
, 或者自定义对象中的方法都会被 tsc 联想并提供,非常方便。
any 类型,使用 any 意味着 typescript 的类型检查退化成了 javascript 的无类型检查。
let notSure: any = 4;
// 类型检查和联想退化了!
notSure = 'maybe it is a string';
notSure = true;
// 在任意值上访问任何属性都不会被检查:
notSure.myName;
// 也允许调用任何方法而不会被检查:
notSure.getName();
🅰️:typescript 声明类型时类型是全小写。