在 JavaScript 中对相同类型的数字分组
我们有一个如下数字数组
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
广告