遍歷一個數組,新增 JavaScript 中 true 出現的次數
假設我們有一個由 't'/'f' 表示的真/假的陣列,我們從資料庫中檢索到,如下所示 −
const arr = ['f', 't', 'f', 't', 't', 't', 'f', 'f', 't', 't', 't', 't', 't', 't', 'f', 't'];
我們需要編寫一個 JavaScript 函式,該函式接受一個這樣的陣列。我們的函式應當統計出現在兩個 'f' 之間的那些 't' 的連續出現次數,並返回一個計數陣列。
因此,對於上述陣列,輸出應如下所示 −
const output = [1, 3, 6, 1];
示例
相應的程式碼如下 −
const arr = ['f', 't', 'f', 't', 't', 't', 'f', 'f', 't', 't', 't', 't', 't', 't', 'f', 't'];
const countClusters = (arr = []) => {
let res = [];
res = arr.reduce((acc, val) => {
const { length: l } = acc;
if(val === 't'){
acc[l - 1]++;
}
else if(acc[l - 1] !== 0){
acc.push(0);
};
return acc;
}, [0]);
return res;
};
console.log(countClusters(arr));輸出
在控制檯中的輸出如下 −
[ 1, 3, 6, 1 ]
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP