ts学习
安装 npm install
1.ts 转换js
cmd :ts --init 生成tsconfig.json转换文件
cmf : tsc(回车) 转换成功
2.类型(基础)
布尔值 let bool:boolean = true;
数值 let num:number = 1; 支持十进制,十六进制,二进制和八进制字面量
字符串 let str:string = "名字";
数组 let arr:Array<string> = ['androw','ios']//<>数组的属性是字符串
enum
类型是对JavaScript标准数据类型的一个补充,使用枚举类型可以为一组数值赋予友好的名字。0
开始为元素编号。或者,全部都采用手动赋值void
类型像是与any
类型相反,它表示没有任何类型。 当一个函数没有返回值时,你通常会见到其返回值类型是 void
void
类型的变量没有什么大用,因为你只能为它赋予undefined
和null
--strictNullChecks
标记,null
和undefined
只能赋值给void
和它们各自;never
类型表示的是那些永不存在的值的类型。never
类型是任何类型的子类型,也可以赋值给任何类型;然而,没有类型是never
的子类型或可以赋值给never
类型(除了never
本身之外)。 即使 any
也不可以赋值给never
。 let x: never;
let y: number;
// 运行错误,数字类型不能转为 never 类型
x = 123;
// 运行正确,never 类型可以赋值给 never类型
x = (()=>{ throw new Error('exception')})();
// 运行正确,never 类型可以赋值给 数字类型
y = (()=>{ throw new Error('exception')})();
// 返回值为 never 的函数可以是抛出异常的情况
function error(message: string): never {
throw new Error(message);
}
// 返回值为 never 的函数可以是无限循环这种无法被执行到的终止点的情况
function loop(): never {
while (true) {}
}
object object
表示非原始类型,也就是除number
,string
,boolean
,symbol
,null
或undefined
之外的类型。
declare function create(o: object | null): void; create({ prop: 0 }); // OK create(null); // OK create(42); // Error create("string"); // Error create(false); // Error create(undefined); // Error