JavaScript URLSearchParams.append() — додати ще одне значення
Метод append() додає значення параметра, не чіпаючи наявні.
Загальний опис
Саме він створює повторювані ключі: ?tag=css&tag=js. Потрібен там, де значень справді може бути кілька — теги, категорії, обрані фільтри.
Якщо ж значення має бути одне (сторінка, сортування), бери set() — інакше параметри почнуть накопичуватись, і адреса поступово перетвориться на сміття.
- Нотатка
-
Найчастіша помилка —
автор: NagarDappend()у пагінації. Клацнув по сторінках п'ять разів — і в адресі п'ять параметрівpage, а сервер бере перший.
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| append | 49+ | 29+ | 10.1+ | 36+ | 17+ | - |
| Переглядач | ||||
|---|---|---|---|---|
| append | 49+ | yes | yes | 10.3+ |
Приклади
+ запропонувати свій приклад у пісочниці
Кілька тегів — append; одна сторінка — set.
const params = new URLSearchParams();
// кілька значень — append
for (const tag of ['css', 'js', 'html']) {
params.append('tag', tag);
}
console.log(params.toString()); // 'tag=css&tag=js&tag=html'
// одне значення — set
params.set('page', '2');
// а так параметри накопичуються — це баг:
// params.append('page', '3'); → page=2&page=3
Коментарі
Коментарів ще немає — будьте першим!