在 JavaScript 中对相同类型的数字进行分组

javascriptweb developmentfront end technologyobject oriented programming更新于 2026/2/1 2:20:17

我们有一个像这样的数字数组 −

const arr = [-1,-2,-1,0,-1,-2,-1,-2,-1,0,1,0];

我们需要编写一个 JavaScript 函数来计算数组中连续的非负数(正数和 0)组。

就像这里一样,我们有从索引 3 到 3 的连续非负数(只有一个元素,但仍然是一个簇),它们形成一个组,然后从 9 到数组末尾形成第二个组。

因此,对于这个数组,函数应该返回 2。

因此,让我们编写该函数的代码 −

示例

其代码为 −

const arr = [-1,-2,-1,0,-1,-2,-1,-2,-1,0,1,0];
const positiveClusters = arr => {
   return arr.reduce((acc, val, ind) => {
      if(val >= 0 && (arr[ind+1] < 0 || typeof arr[ind+1] === 'undefined')){
         acc++;
      };
      return acc;
   }, 0);
};
console.log(positiveClusters(arr));

输出

控制台中的输出将是 −

2

相关文章


有用资源