最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

深入理解javascript prototype的相關(guān)知識

 更新時間:2019年09月19日 08:33:31   作者:岌岌可危  
這篇文章主要介紹了深入理解javascript prototype的相關(guān)知識,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

如圖比較好的闡述了prototype和__proto__

簡單的可以這么理解:

狗類A( function foo()),狗類A的模板描述:A.模板 (foo.prototype)是一個對象object, A.模板有個構(gòu)造方法

foo.prototype.constructor=function foo()

動物B(function function()), 動物B的模板描述 . B.模板 (function.prototype), B.模板有個構(gòu)造方法

function.prototype.constructor=function function()

狗C= new 狗類A (f1=new foo())

那么狗c的父類模板=A.模板 即 f1.__proto__= foo.prototype.

狗類A的父類模板=B.模板 即 foo.__proto__=function.prototype

只有函數(shù)有prototype,對象是沒有的。

但是函數(shù)也是有__proto__的,因為函數(shù)也是對象。函數(shù)的__proto__指向的是Function.prototype。

也就是說普通函數(shù)是Function這個構(gòu)造函數(shù)的一個實例。

__proto__可以理解為指向父類模板的一個引用。用來查找父類模板的

prototype可以理解為對象的一個屬性,用來描述自身如果作為模板是如何定義的,該模板有方法和屬性。

function foo() 自身如果作為模板prototype,它自身會有構(gòu)建函數(shù),模板的屬性constructor就是描述這個構(gòu)建函數(shù)。

foo()這個對象實際上是隱含從父類模板繼承過來的,這個父類模板就是function function()的模板屬性。即它的prototype.

設(shè)計者定義的時候名稱比較混淆不利于理解。這是javascript的敗筆。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • JS對象數(shù)組去重的3種方法示例及對比

    JS對象數(shù)組去重的3種方法示例及對比

    這篇文章主要給大家介紹了關(guān)于JS對象數(shù)組去重的3種方法,三種方法分別包括使用filter和Map、使用reduce以及for循環(huán),文中每個方法都給出了示例代碼,需要的朋友可以參考下
    2021-07-07
  • 使用TypeScript?V8來改進您的JavaScript代碼

    使用TypeScript?V8來改進您的JavaScript代碼

    TypeScript?V8是一個強大的JavaScript類型系統(tǒng),它可以幫助你發(fā)現(xiàn)JavaScript代碼中的錯誤和潛在問題,并在編譯時捕獲它們,以便您可以解決它們,TypeScript?V8為JavaScript提供一系列的類型注釋,包括自定義類型和其他高級功能
    2023-08-08
  • JavaScript實現(xiàn)即時通訊的 4 種方案

    JavaScript實現(xiàn)即時通訊的 4 種方案

    這篇文章主要給大家分享了JavaScript實現(xiàn)即時通訊的 4 種方案,其實就是服務(wù)端如何將數(shù)據(jù)推送到瀏覽器,下面詳細的文章內(nèi)容,需要的小伙伴參考一下,洗碗給對你有所幫助
    2022-02-02
  • webpack4 SplitChunks實現(xiàn)代碼分隔詳解

    webpack4 SplitChunks實現(xiàn)代碼分隔詳解

    這篇文章主要介紹了webpack4 SplitChunks實現(xiàn)代碼分隔詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • JS實現(xiàn)監(jiān)控微信小程序的原理

    JS實現(xiàn)監(jiān)控微信小程序的原理

    這篇文章主要介紹了JS實現(xiàn)監(jiān)控微信小程序的原理,本文通過實例代碼相結(jié)合的形式給大家介紹的非常詳細,需要的朋友可以參考下
    2018-06-06
  • uniapp禁止遮罩層下頁面滾動的解決方法

    uniapp禁止遮罩層下頁面滾動的解決方法

    在uniapp的開發(fā)中用過彈窗的都知道有個bug就是滑動彈窗的內(nèi)容底部頁面也會跟著滑動,所以這篇文章主要給大家介紹了關(guān)于uniapp禁止遮罩層下頁面滾動的解決方法,需要的朋友可以參考下
    2023-09-09
  • JavaScript 拖拽實例代碼

    JavaScript 拖拽實例代碼

    這篇文章主要介紹了JavaScript 拖拽實例代碼的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • js實現(xiàn)的下拉框二級聯(lián)動效果

    js實現(xiàn)的下拉框二級聯(lián)動效果

    這篇文章主要介紹了js實現(xiàn)的下拉框二級聯(lián)動效果,涉及JavaScript針對頁面元素的遍歷與節(jié)點操作相關(guān)技巧,需要的朋友可以參考下
    2016-04-04
  • Javascript 引擎工作機制詳解

    Javascript 引擎工作機制詳解

    我們需要引入幾個相關(guān)的概念:執(zhí)行環(huán)境棧、全局對象、執(zhí)行環(huán)境、變量對象、活動對象、作用域和作用域鏈等,這些概念正是JS引擎工作的核心組件。這篇文章的目的不是孤立的為你講解每一個概念需要的朋友可以參考下
    2016-11-11
  • JS forEach和map方法的用法與區(qū)別分析

    JS forEach和map方法的用法與區(qū)別分析

    這篇文章主要介紹了JS forEach和map方法的用法與區(qū)別,結(jié)合實例形式分析了forEach和map方法的功能、原理、使用方法及相關(guān)操作注意事項,需要的朋友可以參考下
    2019-02-02

最新評論

贺兰县| 岐山县| 嵊泗县| 崇仁县| 名山县| 侯马市| 蓝山县| 丘北县| 古交市| 河南省| 新宁县| 梁平县| 九寨沟县| 恭城| 武川县| 昌黎县| 扬中市| 雷山县| 子洲县| 万宁市| 弋阳县| 襄垣县| 确山县| 叶城县| 安塞县| 忻城县| 克山县| 济南市| 潼南县| 龙井市| 陈巴尔虎旗| 项城市| 和平县| 广宗县| 合阳县| 桐庐县| 应用必备| 车致| 上杭县| 陵水| 昆山市|