W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
ECMAScript 代碼運行時會有一些可用的內(nèi)置對象。一是作為執(zhí)行程序詞法環(huán)境的一部分的全局對象。其他的可通過全局對象的初始屬性訪問。
除非另外指明,如果內(nèi)置對象擁有 [[Call]] 內(nèi)部屬性,那么它的 [[Class]] 內(nèi)部屬性是 "Function",如果沒有 [[Call]] 內(nèi)部屬性,那么它的 [[Class]] 內(nèi)部屬性是 "Object"。除非另外指明,內(nèi)置對象的 [[Extensible]] 內(nèi)部屬性的初始值是 true。
許多內(nèi)置對象是函數(shù):它們可以通過參數(shù)調(diào)用。其中有些還作為構(gòu)造器:這些函數(shù)可被 new 運算符調(diào)用。對于每個內(nèi)置函數(shù),本規(guī)范描述了這些函數(shù)的必須參數(shù)和 Function 對象的屬性。對于每個內(nèi)置構(gòu)造器,本規(guī)范還描述了這些構(gòu)造器的 prototype 對象的屬性,還描述了用 new 表達(dá)式調(diào)用這個構(gòu)造器后返回的具體實例對象的屬性。
除非另外指明了某一特定函數(shù)的描述,如果在調(diào)用本章中描述的函數(shù)或構(gòu)造器時傳入的參數(shù)少于必須的參數(shù)個數(shù),那么這些函數(shù)或構(gòu)造器將表現(xiàn)為仿佛傳入了足夠的參數(shù),而那些缺少的參數(shù)會設(shè)定為 undefined 值。
除非另外指明了某一特定函數(shù)的描述,如果在調(diào)用本章中描述的函數(shù)或構(gòu)造器時傳入了比函數(shù)指定允許的更多的參數(shù)時,額外的參數(shù)會被函數(shù)忽略。然而,一個實現(xiàn)可以為這樣的參數(shù)列表定義依賴于實現(xiàn)的特別行為,只要這種行為在單純添加額外參數(shù)時不拋出 TypeError 異常。
實現(xiàn)為了給內(nèi)置函數(shù)集合增添一些額外功能而添加新函數(shù)是被鼓勵的,而不是為現(xiàn)有函數(shù)增加新參數(shù)。
每個內(nèi)置函數(shù)和每個內(nèi)置構(gòu)造器都有 Function 原型對象 ,F(xiàn)unction.prototype(15.3.4)表達(dá)式的初始值作為其 [[Prototype]] 內(nèi)部屬性的值。
除非另外指明,每個內(nèi)置的原型對象都有 Object 原型對象 ,Object.prototype(15.2.4) 表達(dá)式的初始值作為其 [[Prototype]] 內(nèi)部屬性的值,除了 Object 的原型對象自身。
除非另外指明了特定函數(shù)的描述,否則本章描述的內(nèi)置函數(shù)中不存在不是構(gòu)造器而要實現(xiàn) [[Construct]] 內(nèi)部方法的內(nèi)置函數(shù)。除非另外指明了特定函數(shù)的描述,否則本章描述的內(nèi)置函數(shù)都沒有 prototype 屬性。
本章通常描述構(gòu)造器的“作為函數(shù)調(diào)用”和“用 new 表達(dá)式調(diào)用” 有不同行為。" 作為函數(shù)調(diào)用 " 的行為對應(yīng)于調(diào)用構(gòu)造器的 [[Call]] 內(nèi)部方法,“用 new 表達(dá)式調(diào)用”的行為對應(yīng)于調(diào)用構(gòu)造器的 [[Construct]] 內(nèi)部方法。
本章描述的每個內(nèi)置 Function 對象 -- 不管是構(gòu)造器還是普通函數(shù),或二者都是 -- 擁有一個 length 屬性,其值是個整數(shù)。除非另外指明,此值等于顯示在函數(shù)描述的子章節(jié)標(biāo)題的形式參數(shù)的個數(shù),包括可選參數(shù)。
例如描述 String 的 prototype 對象的 slice 屬性初始值的函數(shù)對象的子章節(jié)標(biāo)題是“String.prototype.slice (start, end)”,這說明有兩個形參 start 和 end,所以這個函數(shù)對象的 length 屬性值是 2。
任何情況下,本章描述的內(nèi)置函數(shù)對象的 length 屬性擁有特性 { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }。除非另外指明,本章描述的所有其他屬性擁有特性 { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: true }。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: