成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

js合并兩個對象

魏憲會 / 1282人閱讀

摘要:中加一個空對象,的值就不會被改變。遍歷此處是判斷自有屬性,使用循環(huán)遍歷對象的屬性時,原型鏈上的所有屬性都將被訪問會避免原型對象擴展帶來的干擾可以把任意多個的源對象自身的可枚舉屬性拷貝給目標對象,然后返回目標對象。

1.extend()

    var obj1 = {
        a:1,
        b:2
    };
    var obj2 = {
        c:3,
        d:4
    };
    var assignObj = $.extend(obj1,obj2);
    console.log("assignObj",assignObj);
    console.log("obj1",obj1);
    console.log("obj2",obj2);


可以發(fā)現(xiàn)obj1的值被改變了。

    var obj1 = {
        a:1,
        b:2
    };
    var obj2 = {
        c:3,
        d:4
    };
    var assignOObj = $.extend({},obj1,obj2);
    console.log("assignOObj",assignOObj);
    console.log("obj1",obj1);
    console.log("obj2",obj2);


extend()中加一個空對象,obj1的值就不會被改變。

2.遍歷

    var obj1={a:1};
    var obj2={b:2,c:3};
    for(var key in obj2){
        if(obj2.hasOwnProperty(key)===true){
        //此處hasOwnProperty是判斷自有屬性,使用 for in 循環(huán)遍歷對象的屬性時,原型鏈上的所有屬性都將被訪問會避免原型對象擴展帶來的干擾
            obj1[key]=obj2[key];
        } 
    }
    console.log(obj1);
    console.log(obj2);


3.Obj.assign()
可以把任意多個的源對象自身的可枚舉屬性拷貝給目標對象,然后返回目標對象。
Object.assign(target, ...sources)

    var obj1 = {
        a:1,
        b:2
    };
    var obj2 = {
        c:3,
        d:4
    };
    var assignObj = Object.assign(obj1,obj2);
    console.log("assignObj",assignObj);
    console.log("obj1",obj1);
    console.log("obj2",obj2);

obj1的值也被改變了,和$.extend()類似.

    var obj1 = {
        a:1,
        b:2
    };
    var obj2 = {
        c:3,
        d:4
    };
    var assignOObj = $.extend({},obj1,obj2);
    console.log("assignOObj",assignOObj);
    console.log("obj1",obj1);
    console.log("obj2",obj2);

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

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/106624.html

相關(guān)文章

  • JavaScript復制(合并對象

    摘要:實現(xiàn)合并對象的方法有很多種,比如也是用寫的,謝謝系列等,至于區(qū)別自己看文檔,文檔地址打造的一個不可變數(shù)據(jù)結(jié)構(gòu)庫的方法其中,為原生方法,但是存在以下兩個在具體應(yīng)用場景上的缺點瀏覽器兼容性問題只能進行淺合并關(guān)于淺合并深合并,碼友之述備矣,這里就 javascript實現(xiàn)合并對象的方法有很多種,比如: 1、Object.assign 2、jQuery.extend(jQuery也是用java...

    vslam 評論0 收藏0
  • JS每日一題: Vue中mixin怎么理解?

    摘要:兩個對象鍵名沖突時,取組件對象的鍵值對也使用同樣的策略進行合并。代碼理解全局混合也可以全局注冊混合對象。注意使用一旦使用全局混合對象,將會影響到所有之后創(chuàng)建的實例為自定義的選項注入一個處理器。 20190122 Vue中mixin怎么理解? mixin是為了讓可復用的功能靈活的混入到當前組件中,混合的對象可以包含任意組件選項(生命周期,指令之類等等), mixin翻譯過來叫混合,高級的...

    jubincn 評論0 收藏0
  • ES6 Javascript 實用開發(fā)技巧

    摘要:定義變量常量中新增加了和兩個命令,用于定義變量,用于定義常量。 定義變量/常量 ES6 中新增加了 let 和 const 兩個命令,let 用于定義變量,const 用于定義常量。兩個命令與原有的 var 命令所不同的地方在于,let, const 都是塊級作用域,其有效范圍僅在代碼塊中,實例如下: //es5 if(1 == 1){ var b = foo; } conso...

    iamyoung001 評論0 收藏0
  • ES6 javascript 實用開發(fā)技巧

    摘要:實用開發(fā)技巧本文只羅列出在開發(fā)過程中相對實用的內(nèi)容,并非一個高大全的文檔,如果希望查閱詳細的內(nèi)容,可購買阮一峰老師所出版的相關(guān)圖書。 Javascript - ES6 javascript 實用開發(fā)技巧 本文只羅列出在 ES6 開發(fā)過程中相對實用的內(nèi)容,并非一個高大全的文檔,如果希望查閱詳細的內(nèi)容,可購買阮一峰老師所出版的 ES6 相關(guān)圖書。另外阮一峰老師《ECMAScript 6 入...

    DobbyKim 評論0 收藏0
  • seajs模塊化改造實踐

    摘要:為對象字符串時,表示模塊的接口就是該對象字符串。我們來看一個實際的例子支付寶的登陸頁面。在網(wǎng)頁支付寶收銀臺中的運用很直觀的就能看到插模塊的合并,這個合并的工作就是構(gòu)建工具的功勞了。 前言 一月份的時候,臨近放假,拿到一個需求,新增一個產(chǎn)品,我一個前端對一個java后端,兩個星期的開發(fā)時間。 因為大部分功能在別的產(chǎn)品都已經(jīng)有了,基本都是簡單處理一下拿過來,再添加一下額外需要的功能,比如選...

    justjavac 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<