题解 | #获取 url 参数#

获取 url 参数

http://www.nowcoder.com/practice/a3ded747e3884a3c86d09d88d1652e10

描述
获取 url 中的参数

  1. 指定参数名称,返回该参数的值 或者 空字符串
  2. 不指定参数名称,返回全部的参数对象 或者 {}
  3. 如果存在多个同名参数,则返回数组
  4. 不支持URLSearchParams方法
    示例1
    输入:
    http://www.nowcoder.com?key=1&key=2&key=3&test=4#hehe key
    输出:
    [1, 2, 3]
function getUrlParam(sUrl, sKey) {
var paramArr = sUrl.split('?')[1].split('#')[0].split('&'); // 取出每个参数的键值对放入数组
const obj = {};
paramArr.forEach(element => {
    const [key, value] = element.split('=');  // 取出数组中每一项的键与值
    if(obj[key] === void 0){   
        obj[key]=value
    } else{
    obj[key]=[].concat(obj[key],value); // 相同键名采用concat累加。
    }
}
);
return sKey===void 0? obj:obj[sKey]||''   // 返回整个对象或对象的指定属性
}
全部评论

相关推荐

像好涩一样好学:这公司我也拿过 基本明确周六加班 工资还凑活 另外下次镜头往上点儿
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务