【问题标题】:How to push a set of arrays into main array?如何将一组数组推入主数组?
【发布时间】:2021-02-25 14:50:17
【问题描述】:

我想在单个函数中将一些数组推送到主数组中。这是一个例子:

let MainArr = [
 {
  "date": "2021-02-24T18:30:00.000Z",
  "age": "9",
  "id": 74,
  "time": 4.00 },
 {"date": "2021-02-24T18:30:00.000Z",
  "age":"9",
  "id": 74,
  "time": 4.00
}];

我从 API 获取所有这些数据,所以下一个数组将是这样的:

let arr1 = [{
  "id": 1,
  "arrKey1": "schedule1"
  }, {
  "id": 2,
  "arrKey1": "schedule2"
  }]
let arr2 = [{
  "id": 1,
  "arrKey2": "bus1"
}, {
  "id": 2,
  "arrKey2": "bus2"
}]
let arr3 = [{
  "id": 1,
  "arrKey3": "car1"
}, {
  "id": 2,
  "arrKey3": "1"
}]

现在结果应该是这样的:

  [{
    "date": "2021-02-24T18:30:00.000Z",
    "age": "9",
    "id": 74,
    "time": 4.00,
    "arrKey1":"schedule1",
    "arrKey2 ":"bus1",
    "arrKey3":"car1"},
   {"date ": "2021-02-24T18:30:00.000Z",
    "age": "9",
    "id": 74,
    "time": 4.00,
    "arrKey1": "schedule2",
    "arrKey2": "bus2",
    "arrKey3": "1"
  }];

【问题讨论】:

  • 请修正语法,并发布您迄今为止尝试解决的问题。
  • 请访问help center,使用tour查看内容和How to Ask。做一些研究,搜索关于SO的相关主题;如果您遇到困难,请发布您的尝试minimal reproducible example,并使用[<>] sn-p 编辑器记录输入和预期输出。
  • 我看得太晚了。现在修复它
  • 如果 MainArray 的长度超过 2 怎么办?那么预期的 o/p 是什么?

标签: javascript arrays angular angular8


【解决方案1】:

在 ES6 中,您可以使用三个点。看例子:

let MainArr = [1, 2, 3];
let arr1 = [4, 5, 6];

console.log('before: ', MainArr)
MainArr.push(...arr1)
console.log('after pushing arr1: ', MainArr)

【讨论】:

  • 这没有给出正确的输出但我明白你的意思。
  • 在我的示例中还是在您的代码中?在我的示例中,MainArr 最初是 [1, 2, 3]。在执行MainArr.push(...arr1) 之后,MainArr 将等于[1, 2, 3, 4, 5, 6]。但是,如果您尝试使用 ... 并且没有得到正确的输出,您可以与我们分享您的代码以检查主题。
  • 但是这里的情况是不同的,如果我这样做,数组中的所有项目都会推送我不希望 id 推送到这 3 个数组中
  • 所以你需要使用for 循环,我认为没有办法代替
  • 是的,我知道了。我需要使用 for 循环
猜你喜欢
  • 2020-12-02
  • 2022-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-24
  • 2015-11-18
  • 1970-01-01
相关资源
最近更新 更多