Set
в JavaScript и как он работает?Set
— это встроенный объект JavaScript, который хранит уникальные значения любого типа. Он полезен для удаления дубликатов из массивов или проверки принадлежности элементов. const set = new Set([1, 2, 2, 3, 4]);
set.add(5); // Добавление элемента
console.log(set.has(3)); // true (проверка наличия)
set.delete(2); // Удаление элемента
console.log([...set]); // [1, 3, 4, 5] (преобразование в массив)
Set
хранит только уникальные значения и позволяет легко управлять коллекцией. Это полезно для оптимизации работы с массивами и устранения дублирования данных. CodeBase | Frontend | #js
Please open Telegram to view this post
VIEW IN TELEGRAM
WeakMap
— это коллекция для хранения пар ключ-значение, где ключами могут быть только объекты. В отличие от Map, WeakMap
позволяет сборщику мусора удалять записи, если на объект-ключ нет других ссылок.let obj = { name: 'Alice' };
const weakMap = new WeakMap();
weakMap.set(obj, 'Дополнительные данные');
console.log(weakMap.get(obj)); // 'Дополнительные данные'
obj = null; // Ключ становится недоступен, запись удаляется из WeakMap
WeakMap
хранит дополнительные данные для объекта obj. После обнуления ссылки obj
запись автоматически удаляется, освобождая память.CodeBase | Frontend | #js
Please open Telegram to view this post
VIEW IN TELEGRAM
filter()
в JavaScript и как он используется?filter()
— это метод массивов в JavaScript, который создаёт новый массив, содержащий только те элементы, которые удовлетворяют условию, заданному в функции обратного вызова.const numbers = [1, 2, 3, 4, 5, 6];
// Оставляем только чётные числа
const evenNumbers = numbers.filter(num => num % 2 === 0);
console.log(evenNumbers); // [2, 4, 6]
filter()
возвращает новый массив, содержащий только чётные числа. Это полезно для фильтрации данных на основе определённых условий.CodeBase | Frontend | #js
Please open Telegram to view this post
VIEW IN TELEGRAM
reduce()
в JavaScript и как он используется?reduce()
— это метод массивов в JavaScript, который выполняет функцию-аккумулятор, последовательно обрабатывая каждый элемент массива и возвращая одно итоговое значение.const numbers = [1, 2, 3, 4, 5];
// Сумма всех чисел в массиве
const sum = numbers.reduce((acc, num) => acc + num, 0);
console.log(sum); // 15
reduce()
суммирует все числа массива, начиная с начального значения 0
. Это полезно для вычислений, таких как сумма, произведение или объединение данных.CodeBase | Frontend | #JS
Please open Telegram to view this post
VIEW IN TELEGRAM