我有一个 URL 参数red=3&red=5&blue=xyz&green=true
,我需要将其解析为字典({red:[3,5], blue:['xyz'], green:[true]})
。感谢您对我当前方法的任何更优雅的解决方案的指点:
> var args = ('red=3&red=5&blue=xyz&green=true').split('&');
> d = {};
> for(var i=0; i<args.length; i++){
var a = args[i].split('=');
var key = a[0];
if(d[key] == undefined){
d[key] = [ a[1] ];
} else { d[key].push( a[1] ); }
}
> d
{…}
blue: Array [ "xyz" ]
green: Array [ "true" ]
red: Array [ "3", "5" ]
__proto__: Object { … }
谢谢大家的建议。根据@Rajesh 的建议,我认为这可能是最好的:
var args = ('red=3&red=5&blue=xyz&green=true').split('&');
d = {};
for(var i=0; i<args.length; i++){
var a = args[i].split('=');
d[a[0]] = d[a[0]] || []
d[a[0]].push(a[1])
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句