Посмотрите, вероятно, есть много способов получить параметры URL. Возможно, ваше программирование реагирует и использует какую-то библиотеку. Я обнаружил, что современные браузеры позволяют сделать это очень просто.

Я покажу вам несколько инструментов, которые вы можете использовать для получения этих параметров URL.

Получить URL

Первое, что нам нужно сделать, это получить URL-адрес. На самом деле довольно просто. Все браузеры поддерживают URL-адрес окна с window.location.

const url = window.location

Это было просто.

Получить параметры URL

Теперь, чтобы получить параметры URL-адреса, мы собираемся использовать API, созданный для современных браузеров, который называется URL. Вот список поддерживаемых браузеров, если вы хотите убедиться в этом перед его использованием.

Первое, что мы хотим сделать, это создать новый объект URL. Затем мы можем использовать функцию объекта URL, чтобы получить нужные нам параметры.

Вот код:

const url = window.location; // http://google.com?id=test
const urlObject = new URL(url);
const id = urlObject.searchParams.get('id')
console.log(id) 
// prints 
// test

Если id не существует, идентификатор будет нулевым.

Создать URL с параметрами

Также очень просто создать URL-адрес с параметрами. Мы снова используем инструмент api браузера URLSearchParams().

Вот совместимость этой функции.

URLSearchParams() - действительно отличная функция, и она может принимать множество опций.

Вот список возможных вариантов, которые может использовать конструктор.

const url = new URL('https://example.com?foo=1&bar=2');

// Retrieve params via url.search
// url.search ?foo=1&bar=2
const params = new URLSearchParams(url.search); 

// Pass in a sequence
const params3 = new URLSearchParams([["foo", 1],["bar", 2]]);

// Pass in a record
const params4 = new URLSearchParams({"foo" : 1 , "bar" : 2});

Таким образом, вы можете решить, как вы хотите передать эти параметры поиска, но вот что я делаю.

const params = { id: 'blahdy' }
const paramString = new URLSearchParams(params)
console.log(`http://google.com?${paramString.toString()}`)

Заключение

Вы можете построить строки поиска параметров всего за пару строк кода. Это самый простой способ получить и построить эти строки. Если у вас есть лучшие способы сделать то же самое, оставьте комментарий и дайте мне знать.

Также, если вы хотите увидеть еще один классный способ использования URLSearchParams, ознакомьтесь с моим сообщением о Крутых функциях ES2019 в этом году! . Здесь я объясняю новую интересную функцию, которую вы можете использовать с URLSearchParams.

Удачного кодирования!

Подпишись на меня в Твиттере!