a,b 的key都是相等的diffObject(a, b) { let before = [], after = [] Object.keys(a).forEach(key => { if (a[key] !== b[key]) { before.push({ ??? }) // 這里應(yīng)該怎么寫,{key: a[key]},但key不能是變量啊 after.push({ ??? }) } }) return [before, after]}或者有什么更好,更效率,更牛逼的的辦法嗎?我要達(dá)到的效果是這樣的const ob1 = { name: '辣條', color: '綠色', length: 10,}const ob2 = { name: '辣條', color: '黃色', length: 12,}const diff = diffObject(ob1, ob2)console.log('diff[0]:', diff[0])console.log('diff[1]:', diff[1])// diff[0]: [{color: '綠色'}, {length: 10,}]// diff[1]: [{color: '黃色'}, {length: 12,}]這個(gè)問題的根本就是,在聲明一個(gè)對(duì)象時(shí),如何把變量作為一個(gè)key。
如何將變量做為一個(gè)對(duì)象的key,push進(jìn)一個(gè)數(shù)組?
牧羊人nacy
2018-11-22 15:10:30
