解析查询 queryString 请求参数的函数

  • Post author:
  • Post category:其他


quety string 请求参数

  1. 本质上可以理解为一种序列化的格式,与 json 类似,它是一种字典类型的容器,里面可以保存键值对(key-value pair)。只不过 querystring 这种形式的限制比较多,其 value 只有字符串型。
  2. Query String 的格式实际上没有要求,当写成 key1=value1&key2=value2&… 这种形式时,Query String 实际上就是一个字典。字典里的字段,大家有时候叫变量(Variable),有时候叫参数(Param),在没有歧义的时候,可以随意称呼。
  3. 是URL在 ? 后面、#前面的所有内容,整个这一段文字叫 query string,有些地方也叫 search (比如 window.location.search这里 search 这个变量名就是告诉你,这个东西叫 search)

处理 queryString 的方法如下:

// 例如当前网页地址为 https://i.cnblogs.com/EditPosts.aspx?opt=1&name=hhh  
function getQueryVariable(variable) {
       var query = window.location.search.substring(1);
       var vars = query.split('&');
       for (var i = 0; i < vars.length; i++) {
             var pair = vars[i].split('=');
               if (decodeURIComponent(pair[0]) == variable) {
                     return decodeURIComponent(pair[1]);
               }
       }
  }
 var value = getQueryVariable("name") // 获取key值为 name 对应的 value
 console.log(value) // "hhh"

参考文档:

该方法具体用法及介绍:

https://stackoverflow.com/questions/2090551/parse-query-string-in-javascript/2091331#2091331

转载于:https://www.cnblogs.com/zhangym118/p/10656113.html