首页 > 解决方案 > TypeScript 类型“对象”与对象接口,为什么没有“数组”类型?

问题描述

有人可以清楚地解释为什么objectTypeScript 中有一个类型,为什么要使用它而不是 JavaScriptObject接口?

同样,为什么不array使用类型,而是使用 JavaScript 接口Array

在 Internet 上看到类似的示例在类似的上下文中的位置Array<Object>和位置,这有点令人困惑。Array<object>

标签: javascripttypescript

解决方案


object代表任何不是原始的东西;所以任何不是number, string, boolean, symbol, null, 或undefined.

Object表示所有对象共有的功能;所以像 .toString() 和 .valueOf() 这样的东西。但请注意!由于装箱(装箱是将原语包装在对象中的地方),原语也有效地具有这些属性,因此以下内容是完全合法的:

const a: Object = 5;
const b: Object = "hello";
const c: Object = true;

相反,以下都是错误:

const a: object = 5;
const b: object = "hello";
const c: object = true;

出于这个原因,Object几乎从来都不是您想要使用的,而您应该使用它object

另请参阅有关“注意事项”和“注意事项”的 Typescript页面


推荐阅读