Promise.all
позволяет запускать несколько промисов одновременно и получать их результаты, когда все промисы выполнены. Если один из промисов завершится с ошибкой, общий результат тоже будет отклонён.const promise1 = Promise.resolve(10);
const promise2 = Promise.resolve(20);
const promise3 = Promise.resolve(30);
Promise.all([promise1, promise2, promise3])
.then((results) => console.log(results)) // [10, 20, 30]
.catch((error) => console.error('Ошибка:', error));
CodeBase | Frontend | #js
Please open Telegram to view this post
VIEW IN TELEGRAM
Map
в JavaScript и как он работает?Map
— это структура данных в JavaScript, которая хранит ключи и значения. В отличие от объектов, Map
позволяет использовать любые типы данных в качестве ключей и сохраняет порядок добавления элементов.// Создание Map
const map = new Map();
// Добавление ключей и значений
map.set('name', 'Alice');
map.set('age', 30);
map.set(1, 'Первый ключ');
// Получение значения по ключу
console.log(map.get('name')); // Alice
// Проверка наличия ключа
console.log(map.has('age')); // true
// Итерация по Map
map.forEach((value, key) => {
console.log(`${key}: ${value}`);
});
Map
используется для хранения данных с разными типами ключей. Это удобная альтернатива объектам для работы с ключами сложных типов.CodeBase | Frontend | #js
Please open Telegram to view this post
VIEW IN TELEGRAM
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
reduceRight()
в JavaScript и как он используется?reduceRight()
— это метод массивов в JavaScript, который работает аналогично reduce
, но выполняет операцию справа налево.const numbers = [1, 2, 3, 4];
// Сложение чисел с обходом справа налево
const sum = numbers.reduceRight((acc, num) => acc + num, 0);
console.log(sum); // 10
reduceRight
суммирует элементы массива, начиная с последнего. Это полезно, когда порядок обработки элементов имеет значение.CodeBase | Frontend | #JS
Please open Telegram to view this post
VIEW IN TELEGRAM
some()
в JavaScript и как он используется?some()
— это метод массивов в JavaScript, который проверяет, удовлетворяет ли хотя бы один элемент массива заданному условию. Он возвращает true
, если хотя бы один элемент прошёл проверку, иначе false
.const numbers = [1, 3, 5, 8];
// Проверяем, есть ли чётные числа
const hasEven = numbers.some(num => num % 2 === 0);
console.log(hasEven); // true
some()
возвращает true
, так как в массиве есть число 8
, которое является чётным. Это полезно для проверки условий без необходимости проходить весь массив.CodeBase | Frontend | #JS
Please open Telegram to view this post
VIEW IN TELEGRAM
every()
в JavaScript и как он используется?every()
— это метод массивов в JavaScript, который проверяет, удовлетворяют ли все элементы массива заданному условию. Он возвращает true
, если все элементы проходят проверку, иначе false
.const numbers = [2, 4, 6, 8];
// Проверяем, все ли числа чётные
const allEven = numbers.every(num => num % 2 === 0);
console.log(allEven); // true
every()
возвращает true
, так как все числа в массиве чётные. Этот метод полезен, когда требуется убедиться, что все элементы массива соответствуют определённым критериям.CodeBase | Frontend | #JS
Please open Telegram to view this post
VIEW IN TELEGRAM
find()
в JavaScript и как он используется?find()
— это метод массивов в JavaScript, который возвращает первый элемент, удовлетворяющий заданному условию. Если ни один элемент не подходит, возвращается undefined
.const numbers = [3, 7, 10, 15];
// Ищем первое число больше 5
const result = numbers.find(num => num > 5);
console.log(result); // 7
find()
находит и возвращает 7
, так как это первое число, удовлетворяющее условию. Этот метод удобен, если нужен только первый подходящий элемент, а не все соответствующие значения.CodeBase | Frontend | #JS
Please open Telegram to view this post
VIEW IN TELEGRAM
includes()
в JavaScript и как он используется?includes()
— это метод массивов и строк в JavaScript, который проверяет, содержит ли массив или строка определённое значение. Он возвращает true
, если элемент найден, и false
, если нет.const numbers = [1, 3, 5, 7];
// Проверяем, есть ли число 5 в массиве
console.log(numbers.includes(5)); // true
const text = "Привет, мир!";
console.log(text.includes("мир")); // true
includes()
проверяет наличие элемента в массиве и подстроки в строке. Этот метод полезен для быстрой проверки наличия значений без необходимости писать циклы.CodeBase | Frontend | #JS
Please open Telegram to view this post
VIEW IN TELEGRAM
startsWith()
в JavaScript и как он используется?startsWith()
— это метод строк в JavaScript, который проверяет, начинается ли строка с указанного символа или подстроки. Он возвращает true
, если строка начинается с переданного значения, и false
, если нет.const text = "JavaScript — крутой язык!";
// Проверяем, начинается ли строка с "Java"
console.log(text.startsWith("Java")); // true
// Проверяем с учетом позиции
console.log(text.startsWith("крутой", 13)); // true
•
startsWith("Java")
проверяет, начинается ли строка с "Java"
.•
startsWith("крутой", 13)
проверяет подстроку с 13-го символа.• Этот метод удобен для валидации данных, обработки URL и фильтрации текстовых данных.
CodeBase | Frontend | #JS
Please open Telegram to view this post
VIEW IN TELEGRAM
endsWith()
в JavaScript и как он используется?endsWith()
— это метод строк в JavaScript, который проверяет, заканчивается ли строка на указанную подстроку. Он возвращает true
, если строка заканчивается переданным значением, и false
, если нет.const text = "frontend — это круто!";
// Проверяем, заканчивается ли строка на "круто!"
console.log(text.endsWith("круто!")); // true
// Проверяем с ограничением по длине
console.log(text.endsWith("frontend", 8)); // true
•
endsWith("круто!")
проверяет, заканчивается ли строка на "круто!"
.•
endsWith("frontend", 8)
проверяет первые 8 символов строки.• Этот метод полезен для проверки расширений файлов, валидации URL и обработки текстов.
CodeBase | Frontend | #JS
Please open Telegram to view this post
VIEW IN TELEGRAM