Как получить параметры GET из JavaScript?
Чтобы узнать параметры, они передаются методом «GET» , как иногда мы передаем идентификатор электронной почты, пароль и другие данные. Для этого мы используем следующий фрагмент кода.
Когда вы посещаете какой-либо веб-сайт, вы никогда не задумывались, какой знак вопроса? делает в адресной строке. Давайте выясним, в чем смысл этого вопросительного знака «?».
Что это '?':
Знак вопроса действует как разделитель, а за ним следует строка запроса в виде пар ключ-значение. Несколько пар ключ-значение разделяются символом «&».
Пример:
geeksforgeeks.org/web-development?page=2&name=gfg
На картинке выше показан адрес. Содержание, за которым следует знак "?" - это строка запроса, содержащая две пары ключ-значение, показанные ниже:
- Пара 1: page = 2
- Пара 2: name = gfg
Наша задача - получить соответствующие значения из каждой пары, которые также известны как параметры GET.
Метод 1. Использование ключей, указанных в адресе . Класс URLSearchParams принимает адрес веб-сайта и ищет значение, связанное с предоставленным ключом.
Вот код для описанного выше подхода:
Javascript
// Arrow function to get the parameter // of the specified key getParameter = (key) => { // Address of the current window address = window.location.search // Returns a URLSearchParams object instance parameterList = new URLSearchParams(address) // Returning the respected value associated // with the provided key return parameterList.get(key) } // Gets the value associated with the key "ie" console.log(getParameter( "ie" )) |
Выход:
2
Метод 2. Использование свойства forEach класса URLSearchParams для получения всех параметров GET.
Javascript
// Arrow function to get all the GET parameters getParameters = () => { // Address of the current window address = window.location.search // Returns a URLSearchParams object instance parameterList = new URLSearchParams(address) // Created a map which holds key value pairs let map = new Map() // Storing every key value pair in the map parameterList.forEach((value, key) => { map.set(key, value) }) // Returning the map of GET parameters return map } // Gets all the getParameters console.log(getParameters()) |
Выход:
{"page" => "2", "name" => "gfg"}