小编典典

合并/展平数组数组

all

我有一个 JavaScript 数组,例如:

[["$6"], ["$12"], ["$25"], ["$25"], ["$18"], ["$22"], ["$10"]]

我将如何将单独的内部数组合并为一个:

["$6", "$12", "$25", ...]

阅读 137

收藏
2022-02-25

共1个答案

小编典典

您可以使用concat合并数组:

var arrays = [

  ["$6"],

  ["$12"],

  ["$25"],

  ["$25"],

  ["$18"],

  ["$22"],

  ["$10"]

];

var merged = [].concat.apply([], arrays);



console.log(merged);

使用 的apply方法concat只会将第二个参数作为一个数组,所以最后一行与此相同:

var merged2 = [].concat(["$6"], ["$12"], ["$25"], ["$25"], ["$18"], ["$22"], ["$10"]);

还有Array.prototype.flat()一种方法(在 ES2019
中引入)可用于展平数组,尽管它仅在 Node.js 从版本 11 开始可用,而在 Internet Explorer
中根本不可用

const arrays = [

      ["$6"],

      ["$12"],

      ["$25"],

      ["$25"],

      ["$18"],

      ["$22"],

      ["$10"]

    ];

const merge3 = arrays.flat(1); //The depth level specifying how deep a nested array structure should be flattened. Defaults to 1.

console.log(merge3);
2022-02-25