Справочник JavaScript
URLSearchParams: читаем параметры адреса
URLSearchParams предоставляет методы для строки запроса после знака ?. С его помощью фильтры можно сохранять в URL и делиться готовой ссылкой.
Рабочий пример
const params = new URLSearchParams(location.search);
const query = params.get("q") ?? "";
params.set("page", "2");
const nextUrl = `${location.pathname}?${params.toString()}`;get возвращает первое значение или null, getAll — все повторяющиеся параметры. set заменяет значения, append добавляет ещё одно, delete удаляет ключ.
Когда применять
Параметры подходят для поиска, сортировки и номера страницы. После изменения можно использовать history.replaceState или pushState без полной перезагрузки.
Проверь пример самостоятельно: измени исходные данные, убери одну строку и сравни результат. Такой короткий эксперимент помогает увидеть роль каждого свойства или метода и не превращает обучение в механическое копирование.
Частые ошибки
- Собирать query string ручной конкатенацией
- Не кодировать специальные символы
- Путать параметры запроса с хэшем
Задание
Сохраняй поисковую фразу и выбранную категорию в URL, а при загрузке восстанавливай поля.
Проверка: результат должен работать с клавиатуры, не создавать ошибок в консоли и оставаться понятным без пояснений автора.