2 html javascript arrays error-handling dom-events
I'm having trouble understanding how my code is resulting in an error. The line that gives off an error is
queryParts.push("&" + param + "=");
Run Code Online (Sandbox Code Playgroud)
I can see that it inserts an array, but I don't understand how to make it an arrow and push.
function urlBuilder(param, paramValue){
base_url = $('.service-container').data('base_url');
var fullurl = window.location.href;
var urlStart = fullurl.split("?").length > 1 ? fullurl.split("?")[0] : null;
var urlQuery = fullurl.split("?").length > 1 ? fullurl.split("?")[1] : null;
if (urlQuery) {
var queryParts = urlQuery.split('&');
for (var i = 0; i < queryParts.length; i++)
{
console.debug('query part: ', queryParts[i]);
if (queryParts[i].includes(param)) {
if (paramValue === null) {
queryParts.splice(i, 1);
} else {
queryParts = "?" + param + "=" + paramValue;
}
} else {
queryParts.push("&" + param + "=");
}
}
var rtnUrl = urlStart + queryParts.join("&");
return rtnUrl;
}else {
return base_url + '?' + param + '=' + paramValue;
}
}
Run Code Online (Sandbox Code Playgroud)
You do
queryParts = "?" + param + "=" + paramValue;
Run Code Online (Sandbox Code Playgroud)
After this, queryParts isn't an array anymore.
You probably wanted
queryParts.push( "?" + param + "=" + paramValue);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
93 次 |
| 最近记录: |