/** * 1 2 4 67 8 true false => 字面量 * var 变量名 = 变量值; */ // 直接定义字面量 var a; a = 10; // a = '10'; // 逻辑运算符 && | ! // | var b; b = "man"; b = "woman"; // b = "ccc"; // number string undefined null boolean // let a1 = 1; // 任意类型 any 隐性类型 // 如果给变量定义类型是any 相当于关闭了ts校验 var c; c = 1; c = "1"; // c = true; // c = null // unknown 未知类型 显性类型 var d; d = 1; d = "1"; d = true; d = null; d = 'hello'; var e; // 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() { console.log("fn1"); // return '哈哈'; } fn1(); // never function fn2() { throw new Error("fn2"); } fn2();