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

/*
 * 提取URL的收索字符串中的参数
 * 这个函数用来解析来自URL的查询串中的name=value参数对
 * 它将name=value对存储在一个对象的属性中,并返回该对象
 * 这样来用它
 * var args = urlArgs();//从URL中解析参数
 * var q = args.q || "";//如果有参数就使用参数,否则使用一个默认值
 * var n = args.n ? parseInt(args.n) : 10;//如果有参数就使用参数,否则使用一个默认值
 */
function urlArgs(){
  var args = {};                  //定义一个空对象
  var query = window.location.search.substring(1);//查找到查询串,并去掉"?"
  var pairs = query.split("&");              //将字符串按照"&"切割为数组
  for(var i = 0; i < pairs.length; i++){        //遍历参数
    var pos = pairs[i].indexOf("=");         //查找name=value
    if(pos == -1) continue;           //如果没有查找到就跳出
    var name = pairs[i].substring(0,pos);       //提取name
    var value = pairs[i].substring(pos+1);            //提取value
    value = decodeURIComponent(value);         //对value进行解码
    args[name] = value;            //储存为属性
  }                        //
  return args;                    //返回解析后的参数
}

原文地址:https://www.cnblogs.com/luozhangshuai/p/7250775.html