中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

js多維數組降維的方法有哪些

發布時間:2023-04-07 16:36:20 來源:億速云 閱讀:91 作者:iii 欄目:開發技術

這篇文章主要介紹“js多維數組降維的方法有哪些”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“js多維數組降維的方法有哪些”文章能幫助大家解決問題。

多維數組降維也就是數組扁平化

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

一,遞歸

        // 一,遞歸
        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)=>{
                // 如果遍歷的元素不是一個數組 就把這個元素放到新數組中 
                // 反之 就進行遞歸再次調用方法
                Array.isArray(item) ? getArr(item) : newArr.push(item)
            })
        }
        getArr(arr)
        console.log(newArr)

二,將多維數組轉為字符串,再轉化為一維數組

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

三,利用數組的方法

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

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)

 五、利用擴展運算符

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

 ...[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多維數組降維的方法有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

js
AI

响水县| 安吉县| 张家界市| 军事| 兴安县| 杭锦后旗| 宜君县| 新野县| 台中市| 三门峡市| 进贤县| 略阳县| 喀喇| 建平县| 南召县| 新宁县| 罗定市| 平乐县| 永兴县| 即墨市| 临湘市| 武乡县| 沁源县| 绥德县| 西平县| 普兰店市| 福海县| 綦江县| 福安市| 嘉善县| 广汉市| 长海县| 琼海市| 左云县| 寿宁县| 元阳县| 镇江市| 资中县| 桃园县| 锡林郭勒盟| 许昌县|