ECMAScript 对象类型

在 ECMAScript 中,所有对象并非同等创建的。

一般来说,可以创建并使用的对象有三种:本地对象、内置对象和宿主对象。

本地对象

ECMA-262 把本地对象(native object)定义为“独立于宿主环境的 ECMAScript 实现提供的对象”。简单来说,本地对象就是 ECMA-262 定义的类(引用类型)。它们包括:

  • Object
  • Function
  • Array
  • String
  • Boolean
  • Number
  • Date
  • RegExp
  • Error
  • EvalError
  • RangeError
  • ReferenceError
  • SyntaxError
  • TypeError
  • URIError

相关页面

JavaScript 高级教程:ECMAScript 引用类型

JavaScript 高级教程:ECMAScript Function 类

JavaScript 参考手册:Array 对象

JavaScript 参考手册:Boolean 对象

JavaScript 参考手册:Date 对象

JavaScript 参考手册:Number 对象

JavaScript 参考手册:String 对象

JavaScript 参考手册:RegExp 对象

内置对象

ECMA-262 把内置对象(built-in object)定义为“由 ECMAScript 实现提供的、独立于宿主环境的所有对象,在 ECMAScript 程序开始执行时出现”。这意味着开发者不必明确实例化内置对象,它已被实例化了。ECMA-262 只定义了两个内置对象,即 Global 和 Math (它们也是本地对象,根据定义,每个内置对象都是本地对象)。

相关页面

JavaScript 参考手册:Global 对象

JavaScript 参考手册:Math 对象

宿主对象

所有非本地对象都是宿主对象(host object),即由 ECMAScript 实现的宿主环境提供的对象。

所有 BOM 和 DOM 对象都是宿主对象。

相关页面

JavaScript 高级教程:JavaScript 实现

W3Schools 参考手册:JavaScript 参考手册

W3Schools 教程:HTML DOM 教程