什麼是陣列扁平化?

2021-10-08 16:50:00 字數 989 閱讀 5690

陣列扁平化?

聽起來好像灰常的好大上?真的嗎?

但是我們也可以用非常簡單易懂的方法來理解它。

陣列扁平化,聽起來是不是像是「降維打擊」,似乎是把3d的物品壓縮到二維?

沒錯,就是這麼理解,來看看下面的圖讓我們更好的理解什麼事是組扁平化。

比如說①是需要處理的陣列,他看起來很複雜但是我們可以把它看成②,而②看起來是不是就有3d感了?

然後變成二維不就是去掉子陣列的中括號然後放進父陣列嘛,然後就變成了③,然後就完成了陣列扁平化,我在這裡只是舉了乙個最賤的的例子,而現實中可能會三次套娃甚至是四次套娃,方法是一致的,慢慢來應該就可以了。(大括號不能去哦)

上面就是陣列扁平化的原理,那怎麼才能給乙個陣列進行扁平化操作呢?

1.es6中的flat是個好辦法:

ary = arr.

flat

(infinity

)console.

log([1

,[2,

3,[4

,5]]

].flat

(infinity

))

2.第二種簡單的方法:

function

flatten

(arr)

return arr

}let arr =[1

,2,[

3,4]

,[5,

[6,7

]]]console.

log(

flatten

(arr)

)

陣列扁平化

原陣列 const arr 1,2,3,4 5,6,7,8 9 希望輸出 1,2,3,4,5,6,7,8,9 方法一 遞迴 function arrdelayering arr else return newarr let newarr arrdelayering arr 1,2,3,4,5,6,7...

陣列扁平化

今天看到了陣列扁平化處理,猶記得之前面試被問到過,下面介紹一下陣列扁平化處理的幾種形式 題目要求 將陣列 arr 1,2,3,4,5,6,7,8,9 轉化為 1,2,3,4,5,6,7,8,9 1 遞迴 var arr 1,2,3,4,5,6,7,8,9 方法一 遞迴 function flatfu...

扁平化陣列

第一次遇到陣列扁平化已經是在3k遊戲的筆試題裡,當時是用了遞迴的方法。因為對一些陣列方法,字串方法十分的不熟練 扁平化陣列的核心都是,遍歷陣列元素,遇到陣列就拆,不是陣列就加進去。var arr 1,2,3,4,5 console.log bianpinghua arr tostring split...