javascript - 合并2个数组的对象
问题描述
让我们看一个例子。
let arr1 = [{image: "some_image_url_1.png"}, {image: "some_image_url_2.png"}]
let arr2 = [{value: "some value 1"}, {value: "some value 2"}]
我需要合并这 2 个对象数组并创建以下数组。
let result = [{image: "some_image_url_1.png", value: "some value 1"},
{image: "some_image_url_2.png", value: "some value 2"}]
angular 2有什么解决方案吗?也许用 lodash?
解决方案
要从现有数组生成新数组,您可以使用map()
:
let arr1 = [{image: "some_image_url_1.png"}, {image: "some_image_url_2.png"}]
let arr2 = [{value: "some value 1"}, {value: "some value 2"}]
let result = arr1.map(function(i, idx){
var obj = {};
obj.image = i.image;
obj.value = arr2[idx].value;
return obj;
});
console.log(result)
[{image: "some_image_url_1.png", value: "some value 1"},
{image: "some_image_url_2.png", value: "some value 2"}]
推荐阅读
- reactjs - 反应选择容器选项宽度
- java - 如何使用 S4 Cloud SDK Connectivity 访问 RabbitMQ 背后的目标服务
- java - 无法在模拟 SNMP4J 代理中注册 OID
- javascript - 如何随机填充矩阵的行?
- hyperledger-fabric - Hyperledger Explorer 未在 8080 上启动(发现问题)
- unity3d - Vuforia 加载白色矩形而不是视频
- julia - 具有不同大小向量的 Julia 数组
- java - Angular 6 应用程序的茶叶分析
- pandas - 从 Google BigQuery 创建熊猫数据框时如何执行 na_values
- java - 显示 FragmentDialog 时如何使应用程序全屏显示