本文實(shí)例講述了Javascript 對(duì)象(object)合并操作。分享給大家供大家參考,具體如下:
南崗ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來(lái)市場(chǎng)廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!
對(duì)象的合并
需求:設(shè)有對(duì)象 o1 ,o2,需要得到對(duì)象 o3
var o1 = { a:'a' }, o2 = { b:'b' }; // 則 var o3 = { a:'a', b:'b' }
方法1:使用JQuery的extend
方法
o3 = $.extend(o1, o2) // 合并 o1 和 o2, 將結(jié)果返回給 o3. 注意: 此時(shí),o1 == o3! 即 o1 被修改 // 或 o3 = $.extend({}, o1, o2) // 合并 o1 和 o2, 將結(jié)果返回給 o3. 注意: 此時(shí),o1 != o3! 即 o1 沒(méi)有被修改
方法2:用 Object.assign(); 網(wǎng)上找的例子:
var o1 = { a: 1 }; var o2 = { b: 2 }; var o3 = { c: 3 }; var obj = Object.assign(o1, o2, o3); console.log(obj); // { a: 1, b: 2, c: 3 } console.log(o1); // { a: 1, b: 2, c: 3 }, 注意目標(biāo)對(duì)象自身也會(huì)改變。
方法3:遍歷賦值法
代碼邏輯:
var extend=function(o,n){ for (var p in n){ if(n.hasOwnProperty(p) && (!o.hasOwnProperty(p) )) o[p]=n[p]; } };
類似于直接賦值增加屬性:
o3=o1; o3['b']='b'; // o3 ={ o1:'a', o2:'b' };
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun測(cè)試上述代碼運(yùn)行效果。
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。