配列内に重複して存在する単語の発生数を取得したい。
例として、こんな配列を用意します。(単語は適当です)
["take", "your", "time", "take", "care", "of", "your", "take"]
function myFunction() {
var num = 0;
var word = [];
var count = [];
var values = ["take", "your", "time", "take", "care", "of", "your", "take"];
values = values.sort();
for (var i = 0; i < values.length; i++) {
if(i == 0){
word.push(values[i]);
count.push(1);
num = i;
}else if(values[i] == values[(i-1)]) {
count[num] = count[num] + 1;
}else {
word.push(values[i]);
count.push(1);
num = num + 1;//ここでnum + 1しないと重複した単語がある場合配列の順番が飛び飛びになる
}
}
Logger.log([word, count]);
}
実行したログはこちら↓
