最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js多維數(shù)組降維的5種方法

 更新時間:2023年04月07日 15:46:27   作者:鮮橙多了沒  
本文主要介紹了js多維數(shù)組降維的5種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

多維數(shù)組降維也就是數(shù)組扁平化

數(shù)組扁平化的方法有很多種,但是我主要用五種,如下:

一,遞歸

        // 一,遞歸
        let arr = [1, [2, 3, 4, 5], [6, 7, 8, 9, [10, 11, 12, [14, 15, 16]]]] 
        let newArr = []
        const getArr=(array)=>{
            array.forEach((item)=>{
                // 如果遍歷的元素不是一個數(shù)組 就把這個元素放到新數(shù)組中 
                // 反之 就進行遞歸再次調用方法
                Array.isArray(item) ? getArr(item) : newArr.push(item)
            })
        }
        getArr(arr)
        console.log(newArr)

二,將多維數(shù)組轉為字符串,再轉化為一維數(shù)組

let arr = [1, [2, 3, 4, 5], [6, 7, 8, 9, [10, 11, 12, [14, 15, 16]]]] 
console.log(arr.join(',').split(','))

三,利用數(shù)組的方法

(使用 Infinity 作為深度,展開任意深度的嵌套數(shù)組)

Array.prototype.flat()
let arr = [1, [2, 3, 4, 5], [6, 7, 8, 9, [10, 11, 12, [14, 15, 16]]]]
console.log(arr.flat(Infinity))

四、利用contact

     var a = [1,[2],[3,4]]
     var result = []
     for(var i=0; i<a.length; i++){
        if(a[i].constructor == Array) {
            result = result.concat(a[i])
        }else {
            result.push(a[i])
        }
      }
      console.log(result)

 五、利用擴展運算符

 擴展運算符相當于數(shù)組拆成最小單位了,

 ...[1,2,[3, 4]] 相當于變成了 1,2,  [3, 4]///[ ].concat(...a) 就相當于 [ ].concat(1,2,[3,4])

    var a = [1,[2],[3,4]]
    var result = []
    result = [].concat(...a)
    console.log(result)

到此這篇關于js多維數(shù)組降維的5種方法的文章就介紹到這了,更多相關js多維數(shù)組降維內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

阿克陶县| 进贤县| 洪泽县| 临湘市| 长海县| 广水市| 井陉县| 普格县| 武邑县| 高青县| 桑日县| 肇东市| 鱼台县| 堆龙德庆县| 庄浪县| 金华市| 宜州市| 衡山县| 淮阳县| 营山县| 陆丰市| 益阳市| 莱芜市| 望江县| 吉安县| 黄石市| 通许县| 桐城市| 法库县| 永昌县| 铜川市| 衡南县| 西乌珠穆沁旗| 怀远县| 乳源| 房山区| 手游| 岳普湖县| 翁牛特旗| 买车| 得荣县|