042_对象类型
1. 在JavaScript中, 所有對(duì)象并非同等創(chuàng)建的。
2. 一般來說, 可以創(chuàng)建并使用的對(duì)象有三種: 本地對(duì)象、內(nèi)置對(duì)象和宿主對(duì)象。
3. 本地對(duì)象
3.1. JavaScript把本地對(duì)象(native object)定義為"獨(dú)立于宿主環(huán)境的ECMAScript實(shí)現(xiàn)提供的對(duì)象"。簡單來說, 本地對(duì)象就是ECMAScript定義的類(需要用戶實(shí)例化)。它們包括:
- ?Object
- ?Function
- ?Array
- ?String
- ?Boolean
- ?Number
- ?Date
- ?RegExp
- ?Error
- ?EvalError
- ?RangeError
- ?ReferenceError
- ?SyntaxError
- ?TypeError
- ?URIError
4. 內(nèi)置對(duì)象
4.1. JavaScript把內(nèi)置對(duì)象(built-in object)定義為"由ECMAScript實(shí)現(xiàn)提供的、獨(dú)立于宿主環(huán)境的所有對(duì)象, 在ECMAScript程序開始執(zhí)行時(shí)出現(xiàn)"。這意味著開發(fā)者不必明確實(shí)例化內(nèi)置對(duì)象, 它已被實(shí)例化了。ECMAScript只定義了兩個(gè)內(nèi)置對(duì)象, 即Global和Math(它們也是本地對(duì)象, 根據(jù)定義, 每個(gè)內(nèi)置對(duì)象都是本地對(duì)象)。
4.2. Global對(duì)象可以說是ECMAScript中最特別的一個(gè)對(duì)象了, 因?yàn)椴还苣銖氖裁唇嵌壬峡? 這個(gè)對(duì)象都是不存在的(我們可以不糾結(jié)它)。
5. 宿主對(duì)象
5.1. 所有非本地對(duì)象都是宿主對(duì)象(host object), 即由JavaScript實(shí)現(xiàn)的宿主環(huán)境(瀏覽器)提供的對(duì)象。
5.2. 所有BOM和DOM對(duì)象都是宿主對(duì)象。
總結(jié)
- 上一篇: 041_对象的创建和销毁
- 下一篇: 045_对象作用域