Skip to content

TypeScript中有很多内置对象,它们可以直接在TypeScript中当做定义好了的类型。内置对象是指根据标准在全局作用域(Global)上存在的对象,这里的标准是指ECMAScript和其他环境(比如DOM)的标准 [2]

下面是一些TypeScript中常用的内置对象:

  • Boolean: 布尔类型。
  • Number: 数字类型。
  • String: 字符串类型。
  • Array: 数组类型。
  • Date: 日期类型。
  • RegExp: 正则表达式类型。
  • Map: 映射类型。
  • Set: 集合类型。
  • Promise: 异步操作的结果类型。

这些内置对象可以直接使用,无需进行额外的导入或定义。例如,可以直接使用以下代码定义一个数字类型的变量:

js
let num: number = 42;

同样地,可以使用以下代码定义一个日期类型的变量:

js
let today: Date = new Date();

需要注意的是,虽然这些内置对象已经定义好了类型,但是它们的实例化仍然需要使用构造函数。例如,上面的代码中使用了Date构造函数来创建一个日期类型的实例 [2]

下面通过一些案例代码来更加深入地了解内置对象的使用。

案例代码1:使用Map内置对象

Map对象是一种简单的键/值对集合,其中键和值可以是任何类型。下面是一个使用Map对象的示例代码:

js
let myMap = new Map();
myMap.set("key1", "value1");
myMap.set("key2", "value2");
myMap.set("key3", "value3");

console.log(myMap.get("key1")); // 输出 "value1"
console.log(myMap.size); // 输出 3

在上面的代码中,首先创建了一个Map对象,然后使用set方法添加了三个键/值对。接着,使用get方法获取了其中一个键对应的值,并使用size属性获取了Map对象中键/值对的数量。

案例代码2:使用Promise内置对象

Promise对象用于表示一个异步操作的结果。下面是一个使用Promise对象的示例代码:

js
function asyncFunction(): Promise<string> {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      resolve("Hello, world!");
    }, 1000);
  });
}

asyncFunction().then((result) => {
  console.log(result); // 输出 "Hello, world!"
});

在上面的代码中,首先定义了一个返回Promise对象的函数asyncFunction。该函数使用setTimeout模拟了一个异步操作,并在操作完成后调用了resolve方法来返回一个字符串"Hello, world!"。接着,使用then方法来处理异步操作的结果,并输出了该结果。

总结来说,TypeScript内置对象是可直接使用的类型,无需进行额外的导入或定义。开发者可以根据具体需求选择合适的内置对象,并使用相应的方法来操作其实例。需要注意的是,虽然内置对象已经定义好了类型,但是它们的实例化仍然需要使用构造函数。 [2]