Creates an object containing the parameters of the current URL.
String.prototype.match()
with an appropriate regular expression to get all key-value pairs.Array.prototype.reduce()
to map and combine them into a single object.location.search
as the argument to apply to the current url
.const getURLParameters = url =>
(url.match(/([^?=&]+)(=([^&]*))/g) || []).reduce(
(a, v) => (
(a[v.slice(0, v.indexOf('='))] = v.slice(v.indexOf('=') + 1)), a
),
{}
);
getURLParameters('google.com'); // {}
getURLParameters('http://url.com/page?name=Adam&surname=Smith');
// {name: 'Adam', surname: 'Smith'}
Snippet collection
Working with URLs is an essential skill for web developers. This snippet collection covers all the necessary resources to master URLs in JavaScript.
JavaScript, Browser
Creates an element from a string (without appending it to the document). If the given string contains multiple elements, only the first one will be returned.
JavaScript, String
Gets the current URL without any parameters or fragment identifiers.
JavaScript, Browser
Parses an HTTP Cookie header string, returning an object of all cookie name-value pairs.