我的目的是使用分隔符分割数组并选择其分割的限制。
var arr = [89, 'sdf', 0, null, 0, true, 89, 0, 'sdf'];
var res = [];
while (arr.length) {
res.push(arr.splice(0, 2));
}
console.log(res)
例如:如果0
是分隔符,2
是限制
arr.split(0, 2)
[[89, 'sdf'], [null]] //output
最佳答案
您可以使用indexOf
和拼接
如下所示:
var arr = [89, 'sdf', 0, null, 0, true, 89, 0, 'sdf'];
function splitArray(arr, seperator, count) {
let result = [],
copy = arr.slice(), // if you don't want to mutate the original array
counter = 0;
while(counter < count && copy.length > 0) {
const index = copy.indexOf(seperator);
if(index !== - 1) {
result.push(copy.splice(0, index));
copy.shift(); // remove the seperator
}
else result.push(copy.splice(0)) // add the remaining items
counter++
}
return result
}
console.log(splitArray(arr, 0, 2))
console.log(splitArray(arr, 0, 3))
关于javascript - 如何在javascript中使用分隔符和限制来分割数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55703720/