国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JavaScript面向?qū)ο缶幊?繼承(四)

MartinHan / 3158人閱讀

摘要:一些面向?qū)ο笳Z言中支持多繼承,在也能實(shí)現(xiàn)多繼承,但是有一些局限,因?yàn)樵谥欣^承是依賴原型鏈實(shí)現(xiàn)的,只有一條原型鏈,所以理論上是不能繼承多個(gè)父類的。從第一個(gè)參數(shù)起為被繼承的對(duì)象獲取參數(shù)長度緩存參數(shù)對(duì)象緩存當(dāng)前對(duì)象遍歷被繼承對(duì)象中的屬性

一些面向?qū)ο笳Z言中支持多繼承,在JavaScript也能實(shí)現(xiàn)多繼承,但是有一些局限,因?yàn)樵贘avaScript中繼承是依賴原型prototype鏈實(shí)現(xiàn)的,只有一條原型鏈,所以理論上是不能繼承多個(gè)父類的。但是JavaScript很靈活,通過一些技巧方法可以繼承多個(gè)對(duì)象的屬性來實(shí)現(xiàn)類似的多繼承。

單繼承

繼承單對(duì)象的extend方法:

//單繼承  屬性復(fù)制
var extend = function (target,source) {
    //遍歷源對(duì)象中的屬性
    for(var property in source){
        //將源對(duì)象中的屬性復(fù)制到目標(biāo)對(duì)象中
        target[property] = source[property];
    }
    //返回目標(biāo)對(duì)象
    return target;
};

單繼承的測試代碼

//測試代碼
var book ={
    name:"javascript",
    alike:["css","html5","js"]
}
var anotherBook = {
    color :"blue"
}
extend(anotherBook,book);
console.log(anotherBook.name);//javascript
console.log(anotherBook.alike);//[ "css", "html5", "js" ]
anotherBook.alike.push("ajax");
anotherBook.name = "設(shè)計(jì)模式";
console.log(anotherBook.name);//設(shè)計(jì)模式
console.log(anotherBook.alike);//[ "css", "html5", "js", "ajax" ]
console.log(book.name);//javascript
console.log(book.alike);//[ "css", "html5", "js", "ajax" ]

上面的方法可以實(shí)現(xiàn)對(duì)一個(gè)對(duì)象屬性的復(fù)制繼承,當(dāng)傳遞多個(gè)對(duì)象時(shí),即可實(shí)現(xiàn)多繼承。

多繼承
//多繼承  屬性復(fù)制
var mix = function () {
    var i =1,//從第二個(gè)參數(shù)起為被繼承的對(duì)象
        len =arguments.length,//獲取參數(shù)長度
        target = arguments[0], //第一個(gè)對(duì)象為目標(biāo)對(duì)象
        arg;//緩存參數(shù)對(duì)象
    for(;i

mix方法的作用是將傳入的多個(gè)對(duì)象的屬性復(fù)制到源對(duì)象中,這樣即可實(shí)現(xiàn)對(duì)多個(gè)對(duì)象的屬性的繼承。另外當(dāng)使用的時(shí)候需要傳入目標(biāo)對(duì)象(第一個(gè)參數(shù)-需要繼承的對(duì)象)時(shí),可以將它綁定到原生對(duì)象Object上,這樣所有的對(duì)象都可以擁有這個(gè)方法。這樣就可以在對(duì)象上直接調(diào)用。

Object.property.mix = function () {
    var i=0,//從第一個(gè)參數(shù)起為被繼承的對(duì)象
        len =arguments.length,//獲取參數(shù)長度
        arg;//緩存參數(shù)對(duì)象
    for(;i           
               
                                           
                       
                 

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/108535.html

相關(guān)文章

  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對(duì)象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對(duì)象。對(duì)象就是數(shù)據(jù),對(duì)象本身不包含方法。類是相似對(duì)象的描述,稱為類的定義,是該類對(duì)象的藍(lán)圖或原型。在中,對(duì)象通過對(duì)類的實(shí)體化形成的對(duì)象。一類的對(duì)象抽取出來。注意中,對(duì)象一定是通過類的實(shí)例化來的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    李昌杰 評(píng)論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對(duì)象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對(duì)象。對(duì)象就是數(shù)據(jù),對(duì)象本身不包含方法。類是相似對(duì)象的描述,稱為類的定義,是該類對(duì)象的藍(lán)圖或原型。在中,對(duì)象通過對(duì)類的實(shí)體化形成的對(duì)象。一類的對(duì)象抽取出來。注意中,對(duì)象一定是通過類的實(shí)例化來的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    Lyux 評(píng)論0 收藏0
  • SegmentFault 技術(shù)周刊 Vol.32 - 七夕將至,你的“對(duì)象”還好嗎?

    摘要:很多情況下,通常一個(gè)人類,即創(chuàng)建了一個(gè)具體的對(duì)象。對(duì)象就是數(shù)據(jù),對(duì)象本身不包含方法。類是相似對(duì)象的描述,稱為類的定義,是該類對(duì)象的藍(lán)圖或原型。在中,對(duì)象通過對(duì)類的實(shí)體化形成的對(duì)象。一類的對(duì)象抽取出來。注意中,對(duì)象一定是通過類的實(shí)例化來的。 showImg(https://segmentfault.com/img/bVTJ3H?w=900&h=385); 馬上就要到七夕了,離年底老媽老爸...

    AaronYuan 評(píng)論0 收藏0
  • Javascript面向對(duì)象編程(三):非構(gòu)造函數(shù)的繼承

    摘要:原文鏈接一什么是非構(gòu)造函數(shù)的繼承比如,現(xiàn)在有一個(gè)對(duì)象,叫做中國人。通過函數(shù),繼承了。中國北京上海香港廈門北京上海香港廈門北京上海香港這時(shí),父對(duì)象就不會(huì)受到影響了。目前,庫使用的就是這種繼承方法。 原文鏈接 一、什么是非構(gòu)造函數(shù)的繼承? 比如,現(xiàn)在有一個(gè)對(duì)象,叫做中國人。 var Chinese = { nation: 中國 } 還有一個(gè)對(duì)象,叫做醫(yī)生。 var Doctor = {...

    jaysun 評(píng)論0 收藏0
  • JavaScript中的面向對(duì)象(object-oriented)編程

    摘要:對(duì)象在中,除了數(shù)字字符串布爾值這幾個(gè)簡單類型外,其他的都是對(duì)象。那么在函數(shù)對(duì)象中,這兩個(gè)屬性的有什么區(qū)別呢表示該函數(shù)對(duì)象的原型表示使用來執(zhí)行該函數(shù)時(shí)這種函數(shù)一般成為構(gòu)造函數(shù),后面會(huì)講解,新創(chuàng)建的對(duì)象的原型。這時(shí)的函數(shù)通常稱為構(gòu)造函數(shù)。。 本文原發(fā)于我的個(gè)人博客,經(jīng)多次修改后發(fā)到sf上。本文仍在不斷修改中,最新版請(qǐng)?jiān)L問個(gè)人博客。 最近工作一直在用nodejs做開發(fā),有了nodejs,...

    JerryZou 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

MartinHan

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<