4 года назад
Сортировка и подсчет одинаковых элементов массива
Тут возникла задача автоматически посчитать одинаковые элементы массива. Сначала думал сортировать и сравнивать в цикле, но нашлось куда как более элегантное решение. 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; }); Но в одну строку ещё круче 🍉 Тут сразу возникает вопрос: как работает...
372 читали · 4 года назад
Коллекции, часть 1: Массивы
В программировании коллекциями называют наборы данных с определёнными свойствами. Что считается набором данных? Допустим, у нас есть одна переменная: a = 5 И вторая переменная: b = 10 Каждая из них – это отдельная сущность, с которой можно работать напрямую, обращаясь по имени. Если две эти переменные как-нибудь логически объединить (например, расположить в памяти друг за другом), и назначить этому объединению отдельное имя (назовём его collection), то мы получим уже набор данных. Этот набор будет...