JavaScript中实现数组扁平化可以使用递归算法,代码如下:
function flattenArray(arr) {
var res = [];
for (var i = 0, len = arr.length; i < len; i++) {
if (Array.isArray(arr[i])) {
res = res.concat(flattenArray(arr[i])); // 递归调用
} else {
res.push(arr[i]);
}
}
return res;
}
这段代码中,使用了if语句判断当前元素是否为数组。如果是数组,则会递归调用 flattenArray
函数,将其扁平化后的结果使用 concat
方法拼接到结果数组 res
中;如果不是数组,则直接将该元素 push 到 res
数组中。最终返回扁平化后的结果数组 res
。
关键词:递归算法,concat方法,Array.isArray方法