Учитывая следующий код, существует переменная counts
, которая подсчитывает количество раз, которое функция functionThatGivesSomeKnownOrUnknownStatus
присваивает каждому состоянию.
const counts = {};
for (let i = 0; i < 100; i++) {
const status = functionThatGivesSomeKnownOrUnknownStatus();
counts[status] = counts[status] ? counts[status] + 1 : 1;
}
Часть, которая мне не нравится, это строка counts[status] = counts[status] ? counts[status] + 1 : 1;
, есть ли способ сделать ее короче и проще / менее избыточной / более чистой?
Это скрипт узла, поэтому приветствуются решения ES6 / 7.
Одним из способов может быть инициализация литерала counts
с ключами, уже установленными на 0
, но я не знаю, какой статус может дать функция.
Попытка сделать заголовок как можно более четким и кратким, если его можно улучшить, смело редактируйте его.