object 对象类型
let flag:boolean = true; // flag = 123; // 错误 flag = false; //正确number
let num:number = 123; // num = '456'; // 错误 num = 456; //正确进制表示:
let decLiteral: number = 6; // 十进制 let hexLiteral: number = 0xf00d; // 十六进制 let binaryLiteral: number = 0b1010; // 二进制 let octalLiteral: number = 0o744; // 八进制string
let str:string = 'this is ts'; str = 'test';作为超集,当然也可以使用模版字符串``进行包裹,通过 ${} 嵌入变量
let name: string = `Gene`; let age: number = 37; let sentence: string = `Hello, my name is ${ name }array
let arr:string[] = ['12', '23']; arr = ['45', '56'];方式二:使用数组泛型,Array<元素类型>:
let arr:Array<number> = [1, 2]; arr = ['45', '56']; tuple元祖类型,允许表示一个已知元素数量和类型的数组,各元素的类型不必相同
let tupleArr:[number, string, boolean]; tupleArr = [12, '34', true]; //ok typleArr = [12, '34'] // no ok赋值的类型、位置、个数需要和定义(生明)的类型、位置、个数一致
enum Color {Red, Green, Blue} let c: Color = Color.Green;any
let num:any = 123; num = 'str'; num = true;定义存储各种类型数据的数组时,示例代码如下:
let arrayList: any[] = [1, false, 'fine']; arrayList[1] = 100;null 和 和 undefined
let num:number | undefined; // 数值类型 或者 undefined console.log(num); // 正确 num = 123; console.log(num); // 正确但是ts配置了--strictNullChecks标记,null和undefined只能赋值给void和它们各自
function hello(): void { alert("Hello Runoob"); }never
let a:never; a = 123; // 错误的写法 // 堆代码 duidaima.com a = (() => { // 正确的写法 throw new Error('错误'); })() // 返回never的函数必须存在无法达到的终点 function error(message: string): never { throw new Error(message); }object
let obj:object; obj = {name: 'Wang', age: 25};三、总结