我想将此数组转换为一个数组,如下所示。无论数组中的嵌套级别如何,如何通过一种可行的方法来实现此目的。
var array = [1, [2], [3, [[4]]]]
//Output = [1,2,3,4]
答案 0 :(得分:2)
你可以使用递归函数。
var array = [1, [2], [3, [[4]]]];
function flatten(ar) {
var result = [];
ar.forEach(function(e) {
if (Array.isArray(e)) {
result = result.concat(flatten(e));
} else {
result.push(e);
}
})
return result;
}
console.log(flatten(array));
答案 1 :(得分:0)
让它递归!
result = [];
function covert(array) {
for (var b in array) {
if (typeof b === number) {
result.push(b)
} else {
convert(b)
}
}
}