在 JavaScript 中,对象可以分为两种:原生对象和宿主对象。
原生对象:这些是由 JavaScript 语言本身定义的对象,无论运行环境如何,都会存在。例如,String、Number、Boolean、Array、Object、Function 等都是原生对象。在 ECMAScript 标准中,你可以找到所有的原生对象。
例如,我们可以创建一个新的数组(Array 是一个原生对象):
let arr = new Array();
宿主对象:这些是由 JavaScript 的运行环境提供的对象。在不同的环境中,宿主对象可能会有所不同。在浏览器环境中,宿主对象包括 Window、Document、Location 等;在 Node.js 环境中,宿主对象包括 global、process、Buffer 等。
例如,在浏览器环境下,我们可以使用 Document 对象(一个宿主对象)来操作 HTML 文档
let title = document.title;
总的来说,原生对象是 JavaScript 语言本身定义的,无论在哪个环境下运行,都会存在;而宿主对象是由 JavaScript 的运行环境定义的,会因环境不同而不同。