bbo
Version:
bbo is a utility library of zero dependencies for javascript.
30 lines (24 loc) • 872 B
JavaScript
;
/**
* getUrlParam / deleteUrlParam
* From https://stackoverflow.com/questions/901115/how-can-i-get-query-string-values-in-javascript
*/
var deleteUrlParam = function (param) {
var url = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window.location.href;
// prefer to use l.search if you have a location/link object
var urlparts = url.split('?');
if (urlparts.length >= 2) {
var prefix = encodeURIComponent(param) + '=';
var pars = urlparts[1].split(/[&;]/g); // reverse iteration as may be destructive
for (var i = pars.length; i-- > 0;) {
// idiom for string.startsWith
if (pars[i].lastIndexOf(prefix, 0) !== -1) {
pars.splice(i, 1);
}
}
return urlparts[0] + (pars.length > 0 ? '?' + pars.join('&') : '');
} else {
return url;
}
};
module.exports = deleteUrlParam;