关注公众号 前端人,回复“加群”
添加无广告优质学习群
大家好,我是鬼哥,又是今天的每日一题时间了,今天这道题是字节的一套面试题中的第六题,欢迎关注我们,后续每天会以试卷的形式分享大厂的面试题!
题目大意:原数组[[0],[2,3,4],1,[1,[2,3]]],输出[0,2,3,4,1,1,2,3]
//判断当前数组是否有子数组
function hasChildArray(arr) {
return arr.some(element => {
if (Array.isArray(element)) {
has = true;
return true;
}
});
}
let sourceArr = [[0], [2, 3, 4], 1, [1, [2, 3]]];
let result = [];
//递归
(function doFunc(arr) {
if (hasChildArray(arr)) {
for (let i = 0, l = arr.length; i < l; i++) {
if (typeof arr[i] == "number") {
result.push(arr[i]);
} else if (Array.isArray(arr[i])) {
doFunc(arr[i]);
}
}
} else {
result=result.concat(arr);
}
})(sourceArr);
console.log(result);
效果
参考资料
https://cnblogs.com/kaima/p/bytedance_interview.html
当前题目进度:字节面试一卷[06/20]题,大家记得来打卡学习
关注公众号,置顶公众号
,鬼哥
每天解答一道大厂面试题,一起前端进阶
加群
,加入前端进阶群一键三连