【问题标题】:How to convert two arrays of same length into one array of objects in javascript?如何在javascript中将两个相同长度的数组转换为一个对象数组?
【发布时间】:2017-02-19 00:34:20
【问题描述】:

我有两个如下所示的数组:

array1 = [1, 2, 3, 4, 5];
array2 = [a, b, c, d, e];

使用 JavaScript,我想将两个相同长度的数组转换为如下所示的对象数组:

newArrayofObjects = [ {key1: 1, key2: a}, {key1: 2, key2: b}, {key1: 3, key2: c},  {key1: 4, key2: d}, {key1: 5, key2: e}] 

【问题讨论】:

  • 这看起来很简单——你真的尝试过自己解决这个问题吗?我相信有人会给你一个答案,但我认为你最好花一些时间自己想出一个解决方案。
  • 提示:获取长度,使用 for 循环进行迭代
  • 我已从您的问题中删除了“json”标签,因为这里不涉及 JSON。

标签: javascript arrays foreach javascript-objects


【解决方案1】:

Array.map 派上用场很多。

var newArray = array1.map(function(e,i){return{key1:e,key2:array2[i]}});

【讨论】:

    【解决方案2】:
    var array1 = [1, 2, 3, 4, 5], array2 = ['a', 'b', 'c', 'd', 'e'], newArrayofObjects = [];
    for(var key = 0; key < array1.length; key++) {
        newArrayofObjects.push({key1 : array1[key], key2 : array2[key]});
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-21
      • 2021-01-17
      • 2018-08-27
      • 1970-01-01
      • 2021-06-23
      相关资源
      最近更新 更多