Skip to content

Instantly share code, notes, and snippets.

@z4none
Created March 29, 2020 16:29
Show Gist options
  • Save z4none/aac2615465c549589fad11c6f7ec0869 to your computer and use it in GitHub Desktop.
Save z4none/aac2615465c549589fad11c6f7ec0869 to your computer and use it in GitHub Desktop.
set url params
// set url params
// if params not exists in url, then add params
// if params exists in url, then replace
function setUrlParams(url, params) {
var parts = url.split("?");
var path = parts[0]
var old_params = {};
if (parts.length == 1);
else {
var items = parts[1].split("&");
for (var i in items) {
var item = items[i].split('=')
if (item.length == 2) {
old_params[item[0]] = item[1]
}
}
}
for (var key in params) {
var value = params[key];
key = encodeURIComponent(key);
value = encodeURIComponent(value);
old_params[key] = value
}
if (Object.keys(old_params).length) {
var items = [];
for (var key in old_params) {
items.push(key + '=' + old_params[key])
}
return path + '?' + items.join('&')
}
return path;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment