91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在JavaScript中使用prototype和__proto_

發布時間:2021-05-12 17:18:24 來源:億速云 閱讀:126 作者:Leah 欄目:web開發

如何在JavaScript中使用prototype和__proto_?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

實例

function Foo() {
}
var foo = new Foo();
console.log(foo.prototype);// undefined
console.log(foo.__proto__ === Foo.prototype);// true
console.log(Foo.__proto__);  [Function]

Foo.__proto__結果如下:

如何在JavaScript中使用prototype和__proto_

console.log(Foo.prototype);// [object Object]

Foo.prototype結果如下:

如何在JavaScript中使用prototype和__proto_

console.log(Foo.prototype.prototype);// undefined

實例說明了:

1、 foo 是 Foo 的一個實例,不是一個函數,所以沒有prototype;

Foo是Function的一個實例,而Function是一個函數,他的實例Foo也是一個函數,所以他們都有prototype。此外Object Array RegExp等也是函數。Math就僅僅是一個new Object() ,不是函數。

2、構造函數的prototype,默認情況下就是一個new Object()還額外添加了一個constructor屬性。所以說默認是沒有prototype只有__proto__的。

除了Object.prototype這個對象,其他所有的對象都會有__proto__屬性,之后函數才會有prototype屬性。

在創建對象的時候會自動創建一個__proto__屬性,指向它構造函數的prototype,當訪問這個對象的屬性的時候會順帶訪問__proto__中對應的屬性,也就是構造函數prototype這樣實現了繼承。

只有創建函數的時候才會創建一個prototype屬性,目的就是為了完成上面的繼承方式。

總結:

<1>不管是普通對象還是函數對象,它們都有一個隱含屬性”__proto__ “,而這屬性就是我們通常說的原型(屬性),它其實就是一個Object類型的對象。

<2>對于函數對象,它們還會多一個prototype的屬性,它和以它為構造函數創建的普通對象的”__proto__ “屬性等同,即"new XXXt().__proto__ ===XXX.prototype"為true,即對象XXX中都有__proto__屬性就是一個指針,指向XXX構造函數中的prototype屬性。

摘錄網上

一個圖(橙色箭頭是初始的關系,綠色是執行 var Fish = new Fu... 創建,藍色是執行f1= new Fish()創建。)

如何在JavaScript中使用prototype和__proto_

JavaScript有什么特點

1、js屬于一種解釋性腳本語言;2、在絕大多數瀏覽器的支持下,js可以在多種平臺下運行,擁有著跨平臺特性;3、js屬于一種弱類型腳本語言,對使用的數據類型未做出嚴格的要求,能夠進行類型轉換,簡單又容易上手;4、js語言安全性高,只能通過瀏覽器實現信息瀏覽或動態交互,從而有效地防止數據的丟失;5、基于對象的腳本語言,js不僅可以創建對象,也能使用現有的對象。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

裕民县| 宁武县| 高碑店市| 横峰县| 泾川县| 大同县| 司法| 柞水县| 天全县| 若尔盖县| 老河口市| 景东| 江津市| 莱州市| 襄垣县| 龙川县| 游戏| 黄骅市| 九江县| 沐川县| 图木舒克市| 深水埗区| 金塔县| 电白县| 宁陵县| 东乌珠穆沁旗| 蒙山县| 枞阳县| 唐山市| 昌平区| 乐昌市| 瑞安市| 皋兰县| 唐河县| 涞水县| 封开县| 万荣县| 常德市| 托里县| 淮安市| 黄冈市|