Вебсправочник
Найдите ответ и попробуйте пример

Справочник JavaScript

Основы языка и работа со страницей: данные, функции, DOM, события, формы, асинхронные запросы и локальные настройки. Примеры для самостоятельной проверки.

Set

Set: уникальные значения и проверка наличия

Set хранит уникальные значения и подходит для набора выбранных идентификаторов или уже встречавшихся примитивов.

Map

Map: коллекция ключей и значений

Map хранит пары ключей и значений, позволяя использовать ключами не только строки, но и другие значения JavaScript.

Object.hasOwn()

Object.hasOwn(): собственное свойство без ловушки прототипа

Object.hasOwn проверяет наличие собственного свойства объекта, не включая унаследованные свойства.

Object.freeze()

Object.freeze(): поверхностная неизменяемость объекта

Object.freeze запрещает обычные изменения собственных свойств объекта и расширение его новым набором свойств.

?.

Необязательная цепочка: безопасное чтение отсутствующего уровня

Оператор ?.

??

Оператор ?? : запасное значение только для null и undefined

Оператор нулевого слияния ?? выбирает запасное значение только тогда, когда левый операнд равен null или undefined.

??= / ||= / &&=

Логические присваивания: условное обновление переменной

Операторы ??=, ||= и &&= присваивают правую часть только при выполнении соответствующего условия для левой.

...args

Остаточные параметры: аргументы функции в массиве

Остаточный параметр собирает оставшиеся аргументы вызова в обычный массив.

Параметры по умолчанию

Параметры по умолчанию и явное undefined

Параметр по умолчанию получает запасное значение, если аргумент пропущен или явно равен undefined.

Замыкания

Замыкание: функция сохраняет доступ к области видимости

Замыкание позволяет функции обращаться к переменным внешней лексической области после завершения внешнего вызова.

Стрелочные функции

Стрелочная функция: краткая запись и лексический this

Стрелочная функция удобна для коротких преобразований и использует this из окружающей области вместо собственного контекста вызова.

this

this: контекст обычного вызова метода

Значение this у обычной функции зависит от способа вызова, а не просто от места её объявления.

bind()

Function.bind(): сохранение контекста и части аргументов

Метод bind возвращает новую функцию с закреплённым this и, при необходимости, начальными аргументами.

call() / apply()

call и apply: явный контекст разового вызова

Методы call и apply вызывают функцию сразу, передавая заданный this и аргументы.

try / catch / finally

try, catch и finally: обработка ошибки и завершающее действие

Конструкция try/catch позволяет обработать исключение, а finally выполняет завершающий код при выходе из соответствующего блока.

throw new Error

Явная ошибка: проверка предусловия функции

Оператор throw прекращает обычное выполнение и передаёт исключение ближайшему подходящему обработчику.

async / await

async и await: последовательное чтение асинхронного кода

async-функция возвращает Promise, а await приостанавливает её продолжение до получения результата ожидаемого значения.

Promise.all()

Promise.all(): совместное ожидание всех результатов

Promise.all создаёт обещание, которое успешно завершается после успешного завершения всех переданных операций.

Promise.allSettled()

Promise.allSettled(): результаты успехов и ошибок вместе

Promise.allSettled ожидает завершения всех переданных обещаний и описывает исход каждого элемента.

Promise.race()

Promise.race(): первый завершившийся исход

Promise.race принимает состояние первого завершившегося участника — успешное или ошибочное.

Promise.any()

Promise.any(): первый успешный результат

Promise.any завершается первым успешным результатом, пропуская отдельные отклонения до появления успеха.

RegExp.test()

RegExp.test(): логическая проверка шаблона

Метод test отвечает, найдено ли совпадение регулярного выражения в строке.

matchAll()

String.matchAll(): все совпадения с группами

Метод matchAll возвращает итератор совпадений, сохраняя группы и позиции для каждого найденного фрагмента.

Группы RegExp

Именованные группы регулярного выражения

Именованная группа позволяет обращаться к захваченному фрагменту через понятное имя, а не только числовой индекс.

normalize()

String.normalize(): одинаковый текст и разные Unicode-записи

Метод normalize приводит строку к одной из форм нормализации Unicode для согласования определённых эквивалентных последовательностей.

Intl.NumberFormat

Intl.NumberFormat: локализованное отображение чисел

Intl.NumberFormat форматирует числа по правилам выбранной локали и параметрам отображения.

Intl.DateTimeFormat

Intl.DateTimeFormat: дата в выбранном часовом поясе

Intl.DateTimeFormat отображает момент времени с учётом локали, часового пояса и выбранных частей даты.

Intl.PluralRules

Intl.PluralRules: выбор формы слова по числу

Intl.PluralRules определяет грамматическую категорию числа для выбранной локали.

toISOString()

Date.toISOString(): момент в UTC и проверка корректности

Метод toISOString представляет корректный объект Date в стандартизованной строковой форме UTC.

BigInt

BigInt: целые числа за пределами безопасного Number

BigInt представляет целые числа произвольной поддерживаемой реализацией величины без обычного ограничения точности целых Number.