MDM-Object.fn 一些實踐與理解
阿新 • • 發佈:2018-07-15
block target 屬性 const ons sign 發生 pre console
Object.assign()
用於將所有可枚舉屬性的值從一個或多個源對象復制到目標對象。它將返回目標對象。如果目標對象中的屬性具有相同的鍵,則屬性將被源中的屬性覆蓋。後來的源的屬性將類似地覆蓋早先的屬性。
語法
Object.assign(target, ...sources)
合並對象 const list = { stu:{aa:11,bb:22,cc:33}, Scenelist:{ee:44,dd:55,ff:66} } const addList = {gg:77,hh:88,ii:99} const result = Object.assign(list,{Scenelist:addList}); //註意目標對象(target)自身也會改變 console.log(result===list) //true console.log(Object.is(result, list)) //true 有趣的是const定義的常量list發生了改變沒報錯。 const保存的是對象的指針?
合並具有相同屬性的對象
const o1 = { a: 1, b: 1, c: 1 };
const o2 = { b: 2, c: 2 };
const o3 = { c: 3 };
const obj = Object.assign({}, o1, o2, o3);
console.log(obj); // { a: 1, b: 2, c: 3 }
MDM-Object.fn 一些實踐與理解