• 获取url参数


    题目描述

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


     1 function getUrlParam(sUrl, sKey) {
     2     //去掉#后面的内容,即例子中的here;去掉?前面的地址,剩下的即为参数
     3     var param = sUrl.split("#")[0].split("?")[1];
     4     if(sKey){
     5         var strs = param.split("&");//分隔每个参数
     6         var arrs = new Array();//如果存在多个同名参数,则返回数组
     7         for(var i = 0 , len = strs.length; i<len; i++){  //len保存strs数组的长度,因为strs将会被分割
     8             var tmp = strs[i].split("="); //把每个strs[i]分割成参数和参数值
     9             if(tmp[0] == sKey){  //若等于指定参数,则保存到数组
    10                 arrs.push(tmp[1]);
    11             }
    12         }
    13         if(arrs.length == 1){ //指定参数名称,返回该参数的值 或者 空字符串
    14             return arrs[0];
    15         }
    16         else if(arrs.length == 0){
    17             return "";
    18         }
    19         else {
    20             return arrs;
    21         }
    22     }
    23     else { //不指定参数名称,返回全部的参数对象 或者 {}
    24         if(param == undefined || param == ""){//url无参数列表
    25             return {};//空对象
    26         }
    27         else {
    28             var strs = param.split("&");
    29             var arrObject = new Object();
    30             for(var i = 0 , len = strs.length ; i< len ; i++){
    31                 var tmp = strs[i].split("=");
    32                 if(!(tmp[0] in arrObject)){//判断arrObject是否有这个属性
    33                     arrObject[tmp[0]]= [];//不在创建属性数组
    34                 }
    35                 arrObject[tmp[0]].push(tmp[1]);
    36             }
    37             return arrObject;
    38         }
    39     }
    40 }

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

  • 相关阅读:
    Pythonurllib
    Python中的假
    线上bug处理方案
    bug级别定义
    提交bug规范
    bug统一处理方案
    jsonserver
    参数默认值 (函数形参与对象数组解构)
    rest 剩余参数
    ES5常用方法
  • 原文地址:https://www.cnblogs.com/daheiylx/p/8970607.html
Copyright © 2020-2023  润新知