JavaScript URLSearchParams.getAll() — усі значення параметра


Метод getAll() повертає масив усіх значень параметра — на випадок, коли ключ у адресі повторюється.

автор: NagarD

Загальний опис

Це нормальна й дуже поширена штука: ?tag=css&tag=js&tag=html — так у фільтрах передають кілька обраних значень.

Якщо параметра немає взагалі, повертається порожній масив, а не null. Тому перевіряти на null не треба — досить length.

автор: NagarD

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
getAll 49+ 29+ 10.1+ 36+ 17+ -
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
getAll 49+ yes yes 10.3+

Приклади

+ запропонувати свій приклад у пісочниці

Фільтр із кількома обраними значеннями.

HTML

<label><input type="checkbox" value="css"> css</label>
<label><input type="checkbox" value="js"> js</label>
<label><input type="checkbox" value="html"> html</label>

JS

const params = new URLSearchParams('?tag=css&tag=js&page=2');

console.log(params.getAll('tag'));     // ['css', 'js']
console.log(params.getAll('missing')); // [] — порожній масив, не null

// відновлюємо стан фільтра з адреси
for (const tag of params.getAll('tag')) {
    document.querySelector(`[value="${tag}"]`).checked = true;
}
автор: NagarD

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід