Skip to content

Instantly share code, notes, and snippets.

@xtrmstep
Created February 20, 2023 08:33
Show Gist options
  • Save xtrmstep/49a1e42ce19b2d54901d2b039aa79c43 to your computer and use it in GitHub Desktop.
Save xtrmstep/49a1e42ce19b2d54901d2b039aa79c43 to your computer and use it in GitHub Desktop.
Add or update URL query parameter in JavaScript
// usage:
// 'http://www.website.com/'.urlQueryParameter('id', 2) => http://www.website.com/?id=2
// 'http://www.website.com/?type=1'.urlQueryParameter('id', 2) => http://www.website.com/?type=1&id=2
String.prototype.isString = true;
String.prototype.urlQueryParameter = function(key, value) {
var uri = this;
if (uri.isString) {
var regEx = new RegExp("([?|&])" + key + "=.*?(&|$)", "i");
var separator = uri.indexOf('?') !== -1 ? "&" : "?";
if (uri.match(regEx)) uri = uri.replace(regEx, '$1' + key + "=" + value + '$2');
else uri = uri + separator + key + "=" + value;
}
return uri;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment