Skip to content

不太常见的原语

值得一提的是 JavaScript 中一些较新的原语,它们在 TypeScript 类型系统中也实现了。我们先简单的看两个例子:

  • bigint

    从 ES2020 开始,JavaScript 中有一个用于非常大的整数的原语 BigInt :

typescript
// 通过bigint函数创建bigint 
const oneHundred: bigint = BigInt(100); 

// 通过文本语法创建BigInt 
const anotherHundred: bigint = 100n;

你可以在TypeScript 3.2 发行说明 中了解有关 BigInt 的更多信息。

  • symbol

JavaScript 中有一个原语 Symbol() ,用于通过函数创建全局唯一引用:

typescript
const firstName = Symbol("name");
const secondName = Symbol("name"); 
if (firstName === secondName) { 
  // 这里的代码不可能执行 
}

此条件将始终返回 false ,因为类型 typeof firstName 和 typeof secondName 没有重叠。