我有一个这样的数组:
arr = [ [[x,x],[x,x]], [[x,x],[x,x],[x,x]], [[x,x]] ]
我想把它变成这样的数组:
arr = [ [x,x],[x,x] , [x,x],[x,x],[x,x], [x,x] ]
所以我试过这个:
for (var i=1; i< arr.length; i++){ arr[0].concat(arr[i]); }
但它不起作用。我如何“合并”这个中间级别的数组?
最佳答案
在 ES6 中你可以使用 spread syntax
使用 concat()
var arr = [ [['x','x'],['x','x']], [['x','x'],['x','x'],['x','x']], [['x','x']] ]
var merged = [].concat(...arr)
console.log(JSON.stringify(merged))
对于旧版本的 ecmascript,可以使用 concat()
和 apply()
完成相同的操作。
var arr = [ [['x','x'],['x','x']], [['x','x'],['x','x'],['x','x']], [['x','x']] ]
var merged = [].concat.apply([], arr)
console.log(JSON.stringify(merged))
关于javascript - 合并数组中未知数量的子数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43142863/