要求:拉平数组 一维数组 递归函数
思路:定义一个空数组用于存放拉平后的数组,判断nums[i]是否是数组且长度大于1,是就套用函数,否则就在空数组的最后面加上nums[i]
第一种方法:
var newNums = []; // 空数组newNums用于存放拉平后的数组
function forEach(arr) {
for (var i = 0; i < arr.length; i++) {
// Array.isArray()检测参数是否是数组,结果为boolean. 如果arr[i]为数组且其长度大于1,则接着调用函数,否则在空数组newNums后面添加arr[i]
if (Array.isArray(arr[i]) && arr[i].length > 1) {
forEach(arr[i])
} else {
newNums.push(arr[i]);
}
// Array.isArray(arr[i]) && arr[i].length > 1 ? forEach(arr[i]) : newNums.push(arr[i]); ----- 此语法替换if else 也可
}
return newNums;
}<