Merge two unordered objects with different keys but same value?

前端 未结 5 2001
谎友^
谎友^ 2021-01-28 02:05

Merge objects like obj1 and obj2 to get obj3 in javascript.

obj1 = [{fruit: \'watermelon\', sweetness: 3},{fruit: \'banana\', sweetness: 4},{fruit: \'apple\', sw         


        
5条回答
  •  悲哀的现实
    2021-01-28 02:26

    Not a general solution but enough for your case:

    var obj1 = [{fruit: 'watermelon', sweetness: 3},{fruit: 'banana', sweetness: 4},{fruit: 'apple', sweetness: 5}]
    var obj2 = [{fruit_name: 'apple', color: 'red'},{fruit_name: 'banana', color:'yellow'},{fruit_name: 'watermelon', color:'green'}]
    
    var obj3 = obj2.map(o => Object.assign({}, o, {'sweetness': obj1.find(p => p.fruit === o.fruit_name).sweetness}))
    
    console.log(obj3)

提交回复
热议问题