提取URL的搜索字符串中的参数

Posted 雨帘轻挂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了提取URL的搜索字符串中的参数相关的知识,希望对你有一定的参考价值。

 1 /*--------------------------------------------------------------------------------*
 2  * 功能描述:提取URL的搜索字符串中的参数
 3  * 原理:这个函数用来解析来自URL的查询串中的的name=value参数对
 4  *          它将name=value对存储在一个对象的属性中,并返回该对象
 5  * 测试:已通过
 6  * 时间:2016/10/31
 7  *--------------------------------------------------------------------------------*/
 8  
 9  function urlArgs(){
10      // 定义一个空对象,存储参数对
11      var args = {};
12      // 找到查询串,并去掉"?"
13      var query = location.search.substring(1);
14      // 根据"&"将查询字符串分隔开
15      var pairs = query.split("&");
16      for(var i = 0;i < pairs.length;i++){ // 对于每个参数对
17          var pos = pairs[i].indexOf("=");  // 查找"name=value"
18          if(pos == -1){  // 如果没有找到的话就跳过
19              continue;
20          }
21          // 如果找到的话
22          var name = pairs[i].substring(0,pos);
23          var value = pairs[i].substring(pos+1);
24          // 对value进行解码
25          value = decodeURIComponent(value);
26          // 存储为args对的属性
27          args[name] = value;
28      }
29      // 返回由参数对组成的对象
30      return args;
31  }

 

以上是关于提取URL的搜索字符串中的参数的主要内容,如果未能解决你的问题,请参考以下文章

URL 片段中的多个参数

无法提取dataurl参数怎么解决

提取url中参数的方法(转换成json格式)

通过删除 Laravel 中的多余字符,从斜杠分隔的 url 中提取参数值

如何从 Javascript 中的 URL 中提取 GET 参数? [复制]

通过删除Laravel中的额外字符,从斜杠分隔的URL中提取参数值