/** * 字面量 * 1 2 3 4 5 true false * * 变量 * var 变量名 = 变量值; * * 两种: * 基本数据类型:number boolean string null undefined symbol bigint * 引用数据类型: object (数组 对象 函数) * * ts 定义类型 * let xx:type = value; */ let a: string = '12'; let b: number = 121; let c: boolean = false; let d: null = null; let e: undefined = undefined; let f: symbol = Symbol('mySymbol'); let g: bigint = 647732672647264726n; // ts专属类型 // any 任意类型 隐性类型 let h; h = 123; h = 'str1'; // unknown 未知类型 显性类型 let i: unknown; i = 123; i = 'str2'; /** any unknown 区别 * any 可以赋值给任意类型 * unknown 只能赋值给 unknown 和 any **/ let j: string; // h = i; // j = h; /** * 类型断言 * 1.数据 as 类型 * 2.<类型>数据 */ j = i as string; j = i; // void 空类型 函数没有返回值 function fn1():void { console.log('fn1'); // return 12; } fn1(); // never 永远不会有返回值 function fn2():never { // console.log('fn2'); // return 12; throw new Error('报错了'); } fn2();