安装 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类型相反,它表示没有任何类型。 当一个函数没有返回值时,你通常会见到其返回值类型是 voidvoid类型的变量没有什么大用,因为你只能为它赋予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