最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
如何體現(xiàn)js繼承關(guān)系

小編給大家分享一下如何體現(xiàn)js繼承關(guān)系,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

成都創(chuàng)新互聯(lián)服務(wù)緊隨時(shí)代發(fā)展步伐,進(jìn)行技術(shù)革新和技術(shù)進(jìn)步,經(jīng)過10多年的發(fā)展和積累,已經(jīng)匯集了一批資深網(wǎng)站策劃師、設(shè)計(jì)師、專業(yè)的網(wǎng)站實(shí)施團(tuán)隊(duì)以及高素質(zhì)售后服務(wù)人員,并且完全形成了一套成熟的業(yè)務(wù)流程,能夠完全依照客戶要求對(duì)網(wǎng)站進(jìn)行網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、建設(shè)、維護(hù)、更新和改版,實(shí)現(xiàn)客戶網(wǎng)站對(duì)外宣傳展示的首要目的,并為客戶企業(yè)品牌互聯(lián)網(wǎng)化提供全面的解決方案。

JS作為面向?qū)ο蟮娜躅愋驼Z言,繼承也是其非常強(qiáng)大的特性之一。那么如何在JS中實(shí)現(xiàn)繼承呢?讓我們拭目以待。

js里常用的如下兩種繼承方式:

原型鏈繼承(對(duì)象間的繼承)

類式繼承(構(gòu)造函數(shù)間的繼承)

由于js不像java那樣是真正面向?qū)ο蟮恼Z言,js是基于對(duì)象的,它沒有類的概念。所以,要想實(shí)現(xiàn)繼承,可以用js的原型prototype機(jī)制或者用apply和call方法去實(shí)現(xiàn)

在面向?qū)ο蟮恼Z言中,我們使用類來創(chuàng)建一個(gè)自定義對(duì)象。然而js中所有事物都是對(duì)象,那么用什么辦法來創(chuàng)建自定義對(duì)象呢?這就需要用到j(luò)s的原型:

我們可以簡單的把prototype看做是一個(gè)模版,新創(chuàng)建的自定義對(duì)象都是這個(gè)模版(prototype)的一個(gè)拷貝 (實(shí)際上不是拷貝而是鏈接,只不過這種鏈接是不可見,新實(shí)例化的對(duì)象內(nèi)部有一個(gè)看不見的__Proto__指針,指向原型對(duì)象)。

js可以通過構(gòu)造函數(shù)和原型的方式模擬實(shí)現(xiàn)類的功能。 另外,js類式繼承的實(shí)現(xiàn)也是依靠原型鏈來實(shí)現(xiàn)的。

原型式繼承與類式繼承

類式繼承是在子類型構(gòu)造函數(shù)的內(nèi)部調(diào)用超類型的構(gòu)造函數(shù)。

嚴(yán)格的類式繼承并不是很常見,一般都是組合著用:

function Super(){
    this.colors=["red","blue"];
}
 
function Sub(){
    Super.call(this);
}

原型式繼承是借助已有的對(duì)象創(chuàng)建新的對(duì)象,將子類的原型指向父類,就相當(dāng)于加入了父類這條原型鏈

原型鏈繼承

為了讓子類繼承父類的屬性(也包括方法),首先需要定義一個(gè)構(gòu)造函數(shù)。然后,將父類的新實(shí)例賦值給構(gòu)造函數(shù)的原型。代碼如下:

以上原型鏈繼承還缺少一環(huán),那就是Object,所有的構(gòu)造函數(shù)都繼承自O(shè)bject。而繼承Object是自動(dòng)完成的,并不需要我們自己手動(dòng)繼承,那么他們的從屬關(guān)系是怎樣的呢?

確定原型和實(shí)例的關(guān)系

可以通過兩種方式來確定原型和實(shí)例之間的關(guān)系。操作符instanceof和isPrototypeof()方法:

alert(brother instanceof Object)//true
alert(test instanceof Brother);//false,test 是brother的超類
alert(brother instanceof Child);//true
alert(brother instanceof Parent);//true

只要是原型鏈中出現(xiàn)過的原型,都可以說是該原型鏈派生的實(shí)例的原型,因此,isPrototypeof()方法也會(huì)返回true。

看完了這篇文章,相信你對(duì)如何體現(xiàn)js繼承關(guān)系有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


名稱欄目:如何體現(xiàn)js繼承關(guān)系
新聞來源:http://fisionsoft.com.cn/article/geeoos.html