null 和 undefined
undefined 和 null 是所有类型的子类型。也就是说 undefined 类型的变量,可以赋值给 number 类型的变量
let u: undefined = undefined;
let j: number | undefined; // undefined 常用于组合类型
let n: null = null;
// undefined 和 null 是所有类型的子类型。也就是说 undefined 类型的变量,可以赋值给 number 类型的变量
// 这样不会报错
let num: number = u;
如果你在tsconfig.json指定了”strictNullChecks”:true ,即开启严格模式后, null 和 undefined 只能赋值给 void 和它们各自的类型,不然会报错。
let age: number = null
let realName: string = undefined
number 数值
let decLiteral: number = 6;
let hexLiteral: number = 0xf00d;
// ES6 中的二进制表示法
let binaryLiteral: number = 0b1010;
// ES6 中的八进制表示法
let octalLiteral: number = 0o744;
let notANumber: number = NaN;
let infinityNumber: number = Infinity;
boolean 布尔
let isDone: boolean = false;
// 使用构造函数 Boolean 创造的对象不是布尔值,事实上 new Boolean() 返回的是一个 Boolean 对象
let createdByNewBoolean: Boolean = new Boolean(1);
string 字符串
let myName: string = 'Tom';
let myAge: number = 25;
// 模板字符串
let sentence: string = `Hello, my name is ${myName}.
I'll be ${myAge + 1} years old next month.`;
Symbol
const symbolInstance : Symbol = Symbol('content')
bigInt
bitint 数值可以直接在数字后面加字母n
也可以使用 BigInt 构造函数来表示