//使用unknown,可以给变量添加任何的类型值 //在使用时必须需要断言如下 let e:unknown; e = 'hello' let s :string; //断言的三种方式 //方式一 if(typeof e === 'string'){ s = e console.log(s); }
//方式二 s = e as string;
//方式三 s = <string>e;
使用any类型时,可以赋值给任意参数,但是被赋值的变量类型被转换
//会关闭类型转换,如果赋值给其他变量,也会关闭其他变量的类型转换 let f:any; f = true; let s:string //把 any 值赋值字符串 s = f; console.log('bool赋值给字符串', s); //可以赋值给任意参数,但是被赋值的变量类型被转换,
使用 void 空值
//void表示空,没有返回值的函数。 可以返回reurrn null | undefined function test():void{ //返回null // return null; //返回undefined return undefined; } test()
never
// never ,不会有返回结果 function test1():never{ throw new Error("这是一个错误"); }
对象声明
//object,声明固定对象 let obj:{name:string, age:number} obj = {name:'taotao', age:18} //object, 声明不固定对象, xx 属性名可变 let obj1:{name:string, age:number, [xx:string]:any} obj1 = {name:'taotao', age:18, address:'香景园', isRich:true} //设置函数结构的类型, let func :(a:number,b:number) => number; func = ( num1:number, num2:number) => num1 + num2; let num = func(1,2)
数组的声明
//数组声明两种方式 let arr :string[]; arr = ['a', 'b','c']; let arr1:Array<string>; arr1 = ['a','b','c'];
//元组 固定长度的数组
let h:[string,string] h = ['hello','word']
//变量声明时, | 和& 变量的声明, 和自定义的类型声明
// 变量abc声明变量类型为字符串或者是number, 是 从 | 或 & 且 let abc : string | number; abc = 'hello'; abc = 12345; //从& 表示obj3 ,声明类型 包括 {name:string,num:number} {address:string} let obj3 : {name:string,num:number} & {address:string}; obj3 = {name:'taotao',num:18,address:'abc'} console.log(obj3) //自定义类型, type myType = 1 | 2 | 3; //定义的变量,定义为自定义类型 let myself : myType; //赋值只能赋值自定义类型内的变量
myself = 3
标签:TypeScript,string,number,name,let,使用,类型,赋值 From: https://www.cnblogs.com/qutao125/p/16975497.html