javascript - 比较两个数组,如果发现相同的键,则从第二个数组中获取值

标签 javascript jquery arrays compare

如何比较两个数组,如果找到相同的键,则从第二个数组中获取值并将其分配给第一个数组。结果是使用第一个数组。例如我有下面的数组:

    var compareit = {
            firstArray : {
                'color': 'blue',
                'width': 400,
                'height': 150,
            },
            secondArray: {
                'color': 'red',
                'height': 500,
            },
    };

目标是,我想要的结果是:{'color': 'red', 'width': '400', 'height': '500'};

我非常感谢您的帮助...谢谢:)

最佳答案

您可以使用 Object.assign()将值从一个或多个源对象复制到目标对象。

 var compareit = {
   firstArray: {
     'color': 'blue',
     'width': 400,
     'height': 150,
   },
   secondArray: {
     'color': 'red',
     'height': 500,
   },
 };

 Object.assign(compareit.firstArray, compareit.secondArray);
 console.log(compareit.firstArray)

如果你不想操作现有对象compareit.firstArray

var compareit = {
  firstArray: {
    'color': 'blue',
    'width': 400,
    'height': 150,
  },
  secondArray: {
    'color': 'red',
    'height': 500,
  },
};

var obj = {};
Object.assign(obj, compareit.firstArray, compareit.secondArray);
console.log(obj, compareit)

关于javascript - 比较两个数组,如果发现相同的键,则从第二个数组中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42201363/

相关文章:

PHP数组使用一些操作插入到mysql中

包含对象逻辑的 Javascript 数组失败。出了什么问题?

javascript - 传递函数与传递匿名闭包的排序行为

javascript - Jquery Datatables 呈现多个函数

javascript - 如何检查 Node JS 服务器端代码中是否启用了 javascript

c# - 惊讶地发现 C# 编译器可以推断出信息较少的声明

C - 为什么我不断打印内存地址而不是数组中的值

javascript - 如何在我的内联 block javascript div 之间添加换行符?

javascript - 如何在 JavaScript 中对每个循环的选项值求和

javascript - 使用 jQuery 提取 jpeg EXIF 信息