【发布时间】:2013-05-17 07:40:00
【问题描述】:
我有以下示例代码
var obj = { a: {b:1, c:3 }, d :{f:5}}
var string = "";
for(var key in obj){
for(var subkey in obj[key]){
string += subkey + "="+ obj[key][subkey] + "&";
//for last iteration "&" should not be added.
}
}
console.log(string);
输出是
b=1&c=3&f=5&
所需输出
b=1&c=3&f=5
【问题讨论】:
-
在这种特殊情况下,最简单的做法是简单地获取输出字符串的子字符串,以删除“&”。
-
如果你使用的是 jQuery,那就交给 jQuery。不要自己编写 URL
-
如果是传输参数,并且这是最终的查询字符串,只需将
&留在末尾即可。没关系。 -
string += "&"+subkey + "="+ obj[key][subkey];最后做... string.substring(1) -
不是对问题的贡献,而是对您的情况的贡献:您确定您的子键是唯一的(例如,如果键 a 中的子键 b 键 d 中不能有子键 b)?
标签: javascript