Тут возникла задача автоматически посчитать одинаковые элементы массива. Сначала думал сортировать и сравнивать в цикле, но нашлось куда как более элегантное решение. var meArray = ["el1", "el2", ...];
var counts = meArray.reduce((map, val) => {map[val] = (map[val] || 0)+1;
return map}, {} );
console.log (counts) При чём, там есть и более читаемое решение: var counts = {};
meArray.forEach(function(x) {counts[x] = (counts[x] || 0)+1; }); Но в одну строку ещё круче 🍉 Тут сразу возникает вопрос: как работает...
В программировании коллекциями называют наборы данных с определёнными свойствами. Что считается набором данных? Допустим, у нас есть одна переменная: a = 5 И вторая переменная: b = 10 Каждая из них – это отдельная сущность, с которой можно работать напрямую, обращаясь по имени. Если две эти переменные как-нибудь логически объединить (например, расположить в памяти друг за другом), и назначить этому объединению отдельное имя (назовём его collection), то мы получим уже набор данных. Этот набор будет...