js將乙個陣列分割成指定長度陣列的集合

2021-10-08 07:47:50 字數 1140 閱讀 8410

需求:目標陣列[1,2,3,4,5,6,7],假如想分割的長度為2,則輸出[[1,2],[3,4],[5,6],[7]]

lodash庫中提供了這麼乙個方法 chunk(),先用lodash來實現需求

/**

* _.chunk(array, [size=1])

* @description 將目標資料分割成指定長度的陣列集合

* @param array 目標陣列

* @param [size=1] 目標長度,預設值為1

* @returns 經過處理後的陣列

*/const _ =

require

('loadsh');

const arr =[1

,2,3

,4,5

,6,7

];const result_1 = _.

chunk

(arr,2)

;const result_2 = _.

chunk

(arr)

;console.

log(result_1)

;// [ [ 1, 2 ], [ 3, 4 ], [ 5, 6 ], [ 7 ] ]

console.

log(result_2)

;// [ [ 1 ], [ 2 ],[ 3 ], [ 4 ],[ 5 ], [ 6 ],[ 7 ] ]

console.

log(arr)

;// [1, 2, 3, 4,5, 6, 7]

chunk()方法不會改變原陣列,具體用法如上,不在贅述

下面用原生的方法來實現

function

splitarr

(ar, size =1)

return res;

}console.

log(

splitarr

(arr,3)

);// [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7 ] ]

如果還有更好的辦法,歡迎分享!!!

js判斷乙個陣列是否包含乙個指定的值

1 array.indexof 此方法判斷陣列中是否存在某個值,如果存在返回陣列元素的下標,否則返回 1 let arr something anything nothing anything let index arr.indexof nothing console.log index 結果是2 ...

js判斷乙個陣列是否包含乙個指定的值

1 array.indexof 此方法判斷陣列中是否存在某個值,如果存在返回陣列元素的下標,否則返回 1 let arr something anything nothing anything let index arr.indexof nothing console.log index 結果是2a...

js在陣列的指定位置插入乙個陣列

問題 arr1 a b c arr2 1 2 3 把陣列arr2插入陣列arr1的第二個元素b後面 思路 插入特定的位置,我們首先會想到splice,splice用法如下。index是索引,howmany是刪除多少個元素,後面的item是插入的元素 arrayobject.splice index,...