javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > javascript合并多层级数组

javascript如何合并多层级数组

作者:黄元帅

这篇文章主要介绍了javascript如何合并多层级数组问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

javascript合并多层级数组

需求

返回一个数组的最低层级展现(遍历出数组中每个元素)

代码

const deepFlatten = arr=>[].concat(...arr.map(v=>Array.isArray(v)?deepFlatten(v) : v));

console.log('[1,[2],[3,[4]],[5,[6,[7,8]]]]合并后的数组为:'+deepFlatten([1,[2],[3,[4]],[5,[6,[7,8]]]]));

效果

一点想法

Array的map()方法会返回处理后的结果,搭配使用ES6中新的特性——扩展运算符…使递归更加高效、易懂。

javascript数组操作合集

数组操作:

改变原数组

不改变原数组

例:let a = [11,22,33]   求和

ruduce((sum,item)=>{sum+=item;return sum})
/*

    确定对象o是不是类数组对象

*/

function isArrayLike(o) {

    if (o

        && typeof o === 'object' &&

        Number.isFinite(o.length) &&

        o.length >= 0 &&

        Number.isInteger(o.length) &&

        o.length < 4294967295) {

        return true

    } else {

        return false

    }

}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文