JS数组扁平化(flat)方法总结

// 第一种
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数组扁平化(flat)方法总结》 朝飞 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
js实现promise js实现promise
??new Promise((resolve, reject) => { //??????resolve?????reject }).then((res) => { //resolve???????????
2020-06-02
下一篇 
leetcode-搜索-34-在排序数组中查找元素的第一个和最后一个位置 leetcode-搜索-34-在排序数组中查找元素的第一个和最后一个位置
34. 在排序数组中查找元素的第一个和最后一个位置描述 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 你的算法时间复杂度必须是 O(log n) 级别。 如果数组中不存在
2020-06-01
  目录