Skip to content

本地对象、内置对象、宿主对象 #195

@TieMuZhen

Description

@TieMuZhen

JavaScript有3大对象,分别是本地对象内置对象宿主对象

在此引用ECMA-262(ECMAScript的制定标准)对于他们的定义:

  • 本地对象

    • 与宿主无关,独立于宿主环境的ECMAScript实现提供的对象。
    • 这些引用类型在运行过程中需要通过new来创建所需的实例对象。
    • 包含:ObjectArrayFunctionBooleanNumberStringDateRegExp等。
  • 内置对象

    • 与宿主无关,独立于宿主环境的ECMAScript实现提供的对象。
    • 在 ECMAScript 程序开始执行前就存在,本身就是实例化内置对象,开发者无需再去实例化。
    • 内置对象是本地对象的子集。
    • 包含:Global和Math。
  • 宿主对象

    • 由 ECMAScript 实现的宿主环境提供的对象,包含两大类,一个是宿主提供,一个是自定义类对象。
    • 所有非本地对象都属于宿主对象。
    • 对于嵌入到网页中的JS来说,其宿主对象就是浏览器提供的对象,浏览器对象有很多,如WindowDocument等。
    • 所有的DOM和BOM对象都属于宿主对象。

很多时候,干脆也会直接把本地对象和内置对象统称为“内置对象”,也就是说除了宿主对象,剩下的都是ECMAScript的内部的“内置”对象

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions