js將多維數組變成一維數組


方法一、apply結合concat拉平數組

    let arr=[[1,2,3],[4,5],[6]];
     console.log([].concat.apply([],arr));
     //輸出 [1, 2, 3, 4, 5, 6]

上面的方法是使用apply結合concat,缺點是只能將二維轉一維,多維數組就有問題了

方法二、ES6新增數組擴展 flat()

[1, 2, [3, 4]].flat()

flat()默認只會“拉平”一層,如果想要“拉平”多層的嵌套數組,可以將flat()方法的參數寫成一個整數,表示想要拉平的層數,默認為1。

如果我們不知道數組究竟層級有多深我們可以用Infinity關鍵字作為參數

[1, [2, [3]]].flat(Infinity)
// [1, 2, 3]

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM