Javascript数组拆分与开头单词(如连续数字)

你能帮助我吗?我有一个名为baseArray. 如您所见,有些值是相同的,我尝试删除重复值,但没有完全奏效。

然后我尝试拆分数组

[[1,2,3,4,5,6,7], [1,2,4,5,6,7], [1,2,3,4,5,6,7,8,9,10..]..]
[[1,2,3,4,5,6,7], [1,2,4,5,6,7], [1,2,3,4,5,6,7,8,9,10..]..]

我想拆分每个数字系列以数字 1 开头

回答

使用 Array#reduce

const baseArray = [1,2,3,4,5,6,7,7,7,1,1,2,2,3,3,4,4,5,5,6,6,7,7,1,2,3,4,5,6,7,8,9,10,11,12,12,12,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,1,2,3,4,5,6,7,8,9,10,11,12,13,13,13,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,1,2,3,4,5,6,6,6,1,1,2,2,3,3,4,4,5,5,6,6,1,2,3,4,5,6,7,8,9,10,10,10,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,1,2,3,4,5,6,6,6,1,1,2,2,3,3,4,4,5,5,6,6,1,2,3,4,5,6,7,8,9,9,9,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,1,2,3,4,5,6,7,8,9,10,10,10,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,1,2,3,4,5,6,7,8,9,10,11,11,11,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,1,2,3,4,5,5,5,1,1,2,2,3,3,4,4,5,5];

const editedArray = baseArray.reduce((acc, num, i, arr) => {
  if (arr[i - 1] !== num) {
    if (num === 1) acc.push([num]);
    else acc[acc.length - 1].push(num);
  }
  
  return acc;
}, []);

console.log(editedArray);


以上是Javascript数组拆分与开头单词(如连续数字)的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>