您好,登錄后才能下訂單哦!
本篇內容介紹了“es6二維數組如何轉一維數組”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
在es6中,可以利用flat()方法將二維數組轉為一維數組,該方法會默認“拉平”一層數組,可以利用參數設置要轉換的層數,該方法只返回一個新的數組,不會更改原數組,語法為“二維數組.flat()”。
本教程操作環境:windows10系統、ECMAScript 6.0版、Dell G3電腦。
方法:flat();可接受參數2,3,4.....,Infinity;
flat():
1.負責將多維數組--->一維數組。該方法返回一個新的數組,對原數據沒有影響。
[1,2,[2,3],[2,2]].flat() //[1, 2, 2, 3, 2, 2]
2.flat()默認只會“拉平”一層,默認為1,如果想要“拉平”多層的嵌套數組,可以將flat()方法的參數寫成一個整數,表示想要拉平的層數。
[1, 2, [3, [4, 5]]].flat() // [1, 2, 3, [4, 5]] [1, 2, [3, [4, 5]]].flat(2) // [1, 2, 3, 4, 5]
3.如果不管有多少層嵌套,都要轉成一維數組,可以用Infinity關鍵字作為參數。
如果原數組有空位,flat()方法會跳過空位。
[1, [2, [3,4]]].flat(Infinity) // [1, 2, 3, 4] [1, 2, , 4, 5].flat() // [1, 2, 4, 5]
示例如下:
const a = [1, 2, 3, 4, 3]; const b = [3, 4, [5, 6]]; const c = [3, 4, [5, 6, [7, 8]]]; // 不傳默認是二維數組降一維數組 console.log(a.concat(b).flat()); // 打印為[1, 2, 3, 4, 3, 3, 4, 5, 6] console.log(a.concat(c).flat(3)) // 打印為[1, 2, 3, 4, 3, 3, 4, 5, 6, 7, 8] // 如果數組嵌套太過復雜可直接傳值Infinity console.log(a.concat(c).flat(Infinity)) // 打印為[1, 2, 3, 4, 3, 3, 4, 5, 6, 7, 8]
“es6二維數組如何轉一維數組”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。