Подсчет большого количества данных - PullRequest
0 голосов
/ 03 апреля 2020

Итак, у меня есть два скрипта, работающих в Node.js.

Скрипт A выводит целое число, которое> = 40 и <= 320. </p>

Скрипт B запускает скрипт A миллионы раз и нужно посчитать, сколько раз появляется каждое число.

Как лучше всего это сделать go? Должно быть лучшее решение, чем набирать let number40 = 0; let number 41 = 0; до 320.

1 Ответ

2 голосов
/ 03 апреля 2020

Как насчет того, чтобы объект map-enum-like содержал key как number и в соответствии с их вхождениями увеличивал их значение;

let obj = {};
let numbers = [50, 55, 120, 300, 150, 50, 300, 50];

numbers.forEach(function(num) {
  obj[num] ? ++obj[num] : (obj[num] = 1);
});

console.log(obj);

Использование Map

let myMap = new Map();
let numbers = [50, 55, 120, 300, 150, 50, 300, 50];

numbers.forEach(function(num) {
  let val = myMap.get(num) || 0;
  myMap.set(num, ++val);
});
console.log(myMap);//check browsers console to check the value.
...