Как получить параметр из URL страницы

27.03.2019

Как получить нужный параметр из адреса страницы?

Итак, у нас есть рекламная кампания, и при переходе по ссылкам из этой кампании, мы получим url типа такого:

https://site.com/?utm_source=facebook

Но источник перехода на сайт может быть разный, и нам нужно отследить параметр utm_source и передать его на обработку дальше.

Вариант 1 – Присваиваем переменной source значение параметра utm_source:

var source = location.search.split('utm_source=').splice(1).join('').split('&')[0];

Если параметров будет больше, то нужно будет копипастить код с изменениями, не очень универсальное решение.

Вариант 2 – создаем функцию, которая будет получать значение любого, указанного параметра:

function getURLParameter(name) {
  return decodeURIComponent((RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1] || '');
}

И потом получаем значение параметра utm_source:

var source = getURLParameter('utm_source');

А если нужно получить несколько разных параметров, то с этой же функцией сделать это гораздо проще.

Например есть такой url

https://site.com/?utm_source=facebook&utm_medium=ppc

Получаем параметры:

var source = getURLParameter('utm_source'); //facebook
var medium = getURLParameter('utm_medium'); //ppc

Полезная инфа:

Оставить комментарий