次のような JavaScript 配列があります:
[["$6"], ["$12"], ["$25"], ["$25"], ["$18"], ["$22"], ["$10"]]
別々の内部配列を次のように 1 つにマージするにはどうすればよいでしょうか。
["$6", "$12", "$25", ...]
ベストアンサー1
ES2019
ES2019では、Array.prototype.flat()
配列をフラット化するために使用できるメソッド。これはほとんどの環境ただし、これは 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);
古いブラウザ
古いブラウザの場合は、Array.prototype.concat
配列を結合するには:
var arrays = [
["$6"],
["$12"],
["$25"],
["$25"],
["$18"],
["$22"],
["$10"]
];
var merged = [].concat.apply([], arrays);
console.log(merged);
apply
のメソッドを使用するとconcat
、2 番目のパラメータが配列として取得されるだけなので、最後の行は次の行と同じになります。
var merged = [].concat(["$6"], ["$12"], ["$25"], ["$25"], ["$18"], ["$22"], ["$10"]);