// 第一种
let ary = [1, [2, [3, [4, 5]]], 6];
let arr_flat = arr.flat(Infinity);
console.log(arr_flat)
// 第二种
let result = [];
let fn = function(ary) {
for(let i = 0; i < ary.length; i++){
if (Array.isArray(ary[i])){
fn(ary[i]);
} else {
result.push(ary[i]);
}
}
return result;
}
// 第三种
function flatten(ary) {
return ary.reduce((pre, cur) => {
return pre.concat(Array.isArray(cur) ? flatten(cur) : cur);
}, []);
}
上一篇
js实现promise
??new Promise((resolve, reject) => {
//??????resolve?????reject
}).then((res) => {
//resolve???????????
2020-06-02
下一篇
leetcode-搜索-34-在排序数组中查找元素的第一个和最后一个位置
34. 在排序数组中查找元素的第一个和最后一个位置描述
给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。
你的算法时间复杂度必须是 O(log n) 级别。
如果数组中不存在
2020-06-01