这不起作用,但我不明白为什么不会这样?有人帮忙吗? :)
params = qs.split("=", 2),
id = params[1];
if(id.indexOf("?") != -1){
id = id.split("?", 1);
}
基本上我想改变'ID'的值,如果IF语句为真,如果不是......它会跳过它并且值Id仍然是默认值。
由于
答案 0 :(得分:1)
id = id.split("?", 1)
的结果是一个数组(最多1项),但我认为你希望id成为一个字符串。这可以解释为什么id不是你想要的字符串。
我同意其他评论。请向我们展示您要解析的URL字符串,并告诉我们您要尝试获取哪个部分。通常,您首先查找?
,然后单独查找,然后将各个key=value
部分分开。
如果你有这样的网址:
http://www.example.com?foo=bar
这是一个简单的函数,可以将所有查询参数转换为对象:
function getParms(url) {
var sections, key, pieces = url.split("?");
var results = {};
if (pieces.length > 1) {
sections = pieces[1].split("&");
for (var i = 0; i < sections.length; i++) {
key = sections[i].split("=");
results[key[0]] = key[1];
}
}
return(results);
}