/** * 1 2 4 67 8 true false => 字面量 * var 变量名 = 变量值; */ // 直接定义字面量 let a:10; a = 10; // a = '10'; // 逻辑运算符 && | ! // | let b: "man" | "woman"; b = "man"; b = "woman"; // b = "ccc"; // number string undefined null boolean // let a1 = 1; // 任意类型 any 隐性类型 // 如果给变量定义类型是any 相当于关闭了ts校验 let c; c = 1; c ="1"; // c = true; // c = null // unknown 未知类型 显性类型 let d:unknown; d = 1; d ="1"; d = true; d = null d = 'hello'; let e:string; // unknown 与 any // any可以给任意类型进行赋值 // unknown不可以给任意类型进行赋值 e = c; // e = d; // if(typeof d === 'string') { // e = d; // } // 类型断言:告知解析器究竟是什么类型 /** * 数据 as 类型 * <类型>数据 */ // e = d; // e = d as string; e = d; // void 用来表示空的类型 function fn1():void { console.log("fn1") // return '哈哈'; } fn1() // never 不允许反出结果 function fn2():never { // 11; throw new Error("fn2") } fn2();