// 字面量 // 1 2 44 'hjdf' 'kkk' true // 变量 let a = "10"; // 字面量 let b: 12; // 字面量的运用 // 逻辑运算符:&& || ! let c: 0 | 1 | 2; c = 0; c = 1; c = 2; // 类型:number boolean string undefined null // 任意类型 any 显性写法 // let d:any = true; // any 隐性写法 // 如果给变量定义类型是any 相当于关闭了ts的校验 let d; d = 0; d = "hello"; // unknown 未知类型 显性写法 let e: unknown; e = 98; e = true; e = "99"; e = d; d = e; /** * unknown 与 any * any 可以给任意类型进行赋值 * unknown 不可以给任意类型进行赋值 但是可以给any进行赋值 */ let f: string; f = "20"; // d = f; // e = f; if (typeof f === "string") { f = d; console.log("走进来"); } // 类型断言 告知浏览器究竟是什么类型 f = d; f = d as string; // void 用来表示空的类型 function fn1():void { // return "你好" console.log("新") } fn1(); // console.log(fn1()) // never 用来表示永远不返回的类型 不允许反出结果 function fn2():never { // 11 throw new Error("我是error") } fn2() export {};