JavaScript 宿主对象和原生对象的区别

191 阅读1分钟

原生对象

“独立于宿主环境的 ECMAScript 实现 提供的对象” 包含:Object、Function、Array、String、Boolean、Number、 Date、RegExp、Error、 EvalError、RangeError、ReferenceError、SyntaxError、TypeError、 URIError

内置对象

开发者不必明确实例化内置对象,它已被内部实例化了

同样是“独立于宿主环境”。而 ECMA-262 只定义了两个内置对象,即 Global 和 Math

宿主对象

BOM 和 DOM 都是宿主对象。

因为其对于不同的“宿主”环境所展示的内容不同。其实说白了 就是,ECMAScript 官方未定义的对象都属于宿主对象,因为其未定义的对象大多数是自己通过 ECMAScript 程序创建的对象