JavaScript URLSearchParams.sort() — упорядкувати параметри
Метод sort() упорядковує параметри за іменем ключа — на місці, нічого не повертаючи.
Загальний опис
Виглядає як дивна дрібниця, доки не згадаєш про кеш. Адреси ?a=1&b=2 і ?b=2&a=1 ведуть на ту саму сторінку — але для кешу (і для Google) це різні адреси.
Сортування зводить їх до одного канонічного вигляду. Саме тому воно корисне при побудові ключів кешу й канонічних посилань.
Порядок значень усередині одного ключа при цьому зберігається.
автор: NagarD
- Порада
-
Будуєш ключ кешу з адреси — відсортуй параметри. Інакше та сама сторінка потрапить у кеш кілька разів під різними ключами.
автор: NagarD
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| sort | 61+ | 54+ | 11+ | 48+ | 17+ | - |
| Переглядач | ||||
|---|---|---|---|---|
| sort | 61+ | yes | yes | 11+ |
Приклади
+ запропонувати свій приклад у пісочниці
Канонічний вигляд адреси для кешу.
const params = new URLSearchParams('?page=2&tag=css&sort=new');
params.sort();
console.log(params.toString()); // 'page=2&sort=new&tag=css'
// ключ кешу — однаковий для будь-якого порядку параметрів
function cacheKey(href) {
const url = new URL(href);
url.searchParams.sort();
return url.href;
}
Коментарі
Коментарів ще немає — будьте першим!