如何在JS中將數組分成多個相等部分
我遇到了一個問題。
一個數組包含了很多項目,我想將它分成多個部分。
我想出了兩種完全不同的解決方案。
A)第一種是將數組平均分成多個部分,例如每個部分有2或3個項目
B)第二種是創建n個部分並為其添加相等的變量集合項目
不同的是我們分割的方法和原因。解決方案(A)在你不知道最後會得到多少組時很好用,而且你並不關心,但你知道你想要每個新數組中有X個項目。
解決方案(B)在你知道你想要創建多少組並且對此要求嚴格時很好用,但你並不關心每個新數組的項目數量。
換句話說,對於一個數組
[ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
使用方案(A),我們可以創建2個項目的部分,得到
1 | [ 1, 2 ] |
或者3個項目的部分:
1 | [ 1, 2, 3 ] |
使用方案(B),我們可以將數組分成2個部分,得到:
1 | [ 1, 2, 3, 4, 5 ] |
或者分成3個部分,得到:
1 | [ 1, 2, 3, 4 ] |
這是方案(A)的實現:
1 | const items = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] //… 你的數組,填充了值 |
在這個例子中,result
是一個新的數組的數組:
1 | [ |
注意,使用splice()
方法會修改原始數組。
這是方案(B)的實現,假設你想要一個包含3個數組的數組作為結果:
1 | const items = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] //… 你的數組,填充了值 |
在這個例子中,result
是:
1 | [ |
tags: [“JavaScript”, “array division”, “chunking”]