Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将URL查询参数转换为对象文本?_Javascript_Jquery - Fatal编程技术网

Javascript 如何将URL查询参数转换为对象文本?

Javascript 如何将URL查询参数转换为对象文本?,javascript,jquery,Javascript,Jquery,查看location.search时,获取查询参数并将其转换为对象文字的最佳方法是什么?假设我有一个如下所示的URL: var params = { nodeId : 2, userId : 3, sortOrder: name, sequence: asc } var url = location.search; url = url.replace('?', ''); var queries = url.split('&'); var params = {}; for

查看location.search时,获取查询参数并将其转换为对象文字的最佳方法是什么?假设我有一个如下所示的URL:

var params = {
  nodeId : 2,
  userId : 3,
  sortOrder: name,
  sequence: asc
}
var url = location.search;
url = url.replace('?', '');
var queries = url.split('&');
var params = {};
for(var q in queries) {
var param = queries[q].split('=');
params.param[0] = param[1];

最后,我希望得到一个如下所示的对象文字:

var params = {
  nodeId : 2,
  userId : 3,
  sortOrder: name,
  sequence: asc
}
var url = location.search;
url = url.replace('?', '');
var queries = url.split('&');
var params = {};
for(var q in queries) {
var param = queries[q].split('=');
params.param[0] = param[1];
所以我想这样做:

var params = {
  nodeId : 2,
  userId : 3,
  sortOrder: name,
  sequence: asc
}
var url = location.search;
url = url.replace('?', '');
var queries = url.split('&');
var params = {};
for(var q in queries) {
var param = queries[q].split('=');
params.param[0] = param[1];
})

但这句话:

params.param[0] = param[1]
生成一个错误。如果您不知道这些键的名称,如何遍历这些键

我们正在使用jQuery,我确信有一个插件可以实现这一点,但我想了解如何编程

params[ param[0] ] = param[1]
仅供参考,您也可以使用一个。

试试,它正是这样做的


var params=$.queryString()

Doh!这正是我想要的。谢谢