javascript получить GET параметр

97
25 марта 2021, 05:20

Нужно получить из урл значение get параметра "data", каким образом это можно реализовать?

Answer 1

Свойство window.location содержит объект со свойством search – строка, начиная со знака вопроса.

Напр., адрес https://site.com/script?param=val&data=ololo и JS код:

var strGET = window.location.search.replace( '?', ''); 
// в переменной strGET будет строка "param=val&data=ololo"

Дальше разбить по символу & и по знакам =.

Также пригодится ф-я decodeURIComponent() для декодирования из urlencode значения параметра.

Полное решение по получению всех GET-параметров в JavaScript может быть таким:

var params = window
    .location
    .search
    .replace('?','')
    .split('&')
    .reduce(
        function(p,e){
            var a = e.split('=');
            p[ decodeURIComponent(a[0])] = decodeURIComponent(a[1]);
            return p;
        },
        {}
    );
console.log( params['data']);
// выведет в консоль значение  GET-параметра data
Answer 2

Если я правильно понял, что вы хотите сделать

var params = {};
if (window.location.href.match(/.*\?.*/)) {
  for (var i = 0; i < tmp_params.length; i++) {
    var _tmp = window.location.href.replace(/.*\?/,'')
      .split('&')[i]
      .split('=');
    params[_tmp[0]] = _tmp[1];
  }
}
alert(params.data);
Answer 3

location.href позволяет получить текущий адрес страницы.

Чтобы получить параметр, можно применить регулярное выражение, либо использовать такой хак:

var parser = document.createElement('a');
parser.href = location.href;

Будут доступны некоторые свойства, например, parser.protocol, parser.hostname, parser.search и подобные.

Также наверняка есть библиотеки для удобной работы с URI.

Answer 4
let params = (new URL(document.location)).searchParams; 
console.log(params.get("data"));
READ ALSO
Angular фильтрация, контроллеры

Angular фильтрация, контроллеры

Не могу разобраться с фильтрацией в angularА именно: Есть 2 контроллера, один отвечает за пользователей, другой за их местоположение

87
Google calendar api, актуальность данных

Google calendar api, актуальность данных

Всем приветРаботаю с google api, а конкретно с календарем

87
Можно ли на javascript узнать aspectRatio изображения?

Можно ли на javascript узнать aspectRatio изображения?

К примеру имеем svg , любой объект на странице либо прямоугольник либо квадрат, так вот для примера взять pattern svg в котором я хочу без ошибочно...

109
Css момощь nth-child

Css момощь nth-child

Есть такое меню, прописал я

124