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'}
Subscribe to get resources directly to your inbox. You won't receive any spam! ✌️