获取url参数

题目描述

获取 url 中的参数
1. 指定参数名称,返回该参数的值 或者 空字符串
2. 不指定参数名称,返回全部的参数对象 或者 {}
3. 如果存在多个同名参数,则返回数组

 1 function getUrlParam(sUrl, sKey) {
 2     var param = sUrl.split('#')[0].split('?')[1];
 3     if (sKey){//指定参数名称
 4         var strs = param.split('&');
 5         var arrs = new Array();//如果存在多个同名参数,则返回数组
 6         for(var i = 0, len = strs.length; i < len; i++){
 7             var tmp = strs[i].split('=');
 8             if(tmp[0] == sKey){
 9                 arrs.push(tmp[1]);
10             }
11         }
12         if (arrs.length == 1){//返回该参数的值或者空字符串
13             return arrs[0];
14         } else if (arrs.length == 0){
15             return "";
16         } else {
17             return arrs;
18         }
19     } else {//不指定参数名称,返回全部的参数对象 或者 {}
20         if(param == undefined || param == ""){
21             return {};
22         } else {
23             var strs = param.split('&');
24             var arrObj = new Object();
25             for(var i = 0, len = strs.length; i < len; i++){
26                 var tmp = strs[i].split('=');
27                 if (!(tmp[0] in arrObj)) {
28                     arrObj[tmp[0]] = [];
29                 }
30                 arrObj[tmp[0]].push(tmp[1]);               
31             }
32             return arrObj;
33         }
34     }
35 }

链接:https://www.nowcoder.com/questionTerminal/a3ded747e3884a3c86d09d88d1652e10
来源:牛客网

猜你喜欢

转载自www.cnblogs.com/daheiylx/p/8970607.html