Apps Script公式リファレンス: Apps Script Reference |障害・課題追跡: IssueTracker |Google Workspace: Status Dashboard - Summary

2017年10月5日木曜日

配列内で重複する値の発生数を取得する

実現したいこと
配列内に重複して存在する単語の発生数を取得したい。

例として、こんな配列を用意します。(単語は適当です)
["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]);
}

実行したログはこちら↓




Latest post

Google Apps Scriptの障害時はIssueTrackerを見てみる - Incidents for Apps Script are reported on Issue Tracker

IssueTracker > Apps Script issues https://issuetracker.google.com/savedsearches/566234 Google Apps Scriptの障害時は IssueTracker に課題が上がっていることが...