字符串到json对象的URL

我试图从String URL创建一个JSON对象但没有成功

我有这个:

var URL = "http://localhost/index.php?module=search&param1=4"; 

我需要这个:

 var dir = index.php; var result = { module:'search', param1:4 }; 

任何人都可以帮我代码吗?

在这里发布链接并不完全正确,但在这种情况下,OP需要的只是一些解析url的库。

这里是: http : //james.padolsey.com/javascript/parsing-urls-with-the-dom/

此函数可以从字符串URL解析变量AND数组:

 function url2json(url) { var obj={}; function arr_vals(arr){ if (arr.indexOf(',') > 1){ var vals = arr.slice(1, -1).split(','); var arr = []; for (var i = 0; i < vals.length; i++) arr[i]=vals[i]; return arr; } else return arr.slice(1, -1); } function eval_var(avar){ if (avar[1].indexOf('[') == 0) obj[avar[0]] = arr_vals(avar[1]); else obj[avar[0]] = avar[1]; } if (url.indexOf('?') > -1){ var params = url.split('?')[1]; if(params.indexOf('&') > 2){ var vars = params.split('&'); for (var i in vars) eval_var(vars[i].split('=')); } else eval_var(params.split('=')); } return obj; } 

在你的情况下:

 obj = url2json("http://localhost/index.php?module=search&param1=4"); console.log(obj.module); console.log(obj.param1); 

得到:

 "search" "4" 

如果要将"4"转换为整数,则必须手动执行。

这个简单的JavaScript做到了

 url = "http://localhost/index.php?module=search&param1=4"; var parameters = url.split("?"); var string_to_be_parsed = parameters[1]; var param_pair_string = string_to_be_parsed.split("&"); alert(param_pair_string.length); var i = 0; var json_string = "{" for(;i