美文网首页
练习1--解析URL参数

练习1--解析URL参数

作者: 王二麻子88 | 来源:发表于2021-03-02 21:53 被阅读0次

题目描述
获取 url 中的参数

  1. 指定参数名称,返回该参数的值 或者 空字符串
  2. 不指定参数名称,返回全部的参数对象 或者 {}
  3. 如果存在多个同名参数,则返回数组
输入
> http://www.example.com?key=1&key=2&key=3&test=4#xixi key
输出
> [1, 2, 3]

代码实现

function getUrlParams(sUrl, sKey) {
  var result, sParams = {};
  sUrl.replace(/[\?&]?(\w+)=(\w+)/g, function (k0, k1, k2) {
    console.log(k0);
    console.log(k1);
    console.log(k2);
    // 其中 参数解析
    // k01 指匹配到的完整内容
    // k01 指匹配到内容的第一个括号
    // k02 值匹配到内容的第二个括号

    sParams[k1] ? sParams[k1].push(k2) : sParams[k1] = [k2]
  })
  result = sParams;
  if (result[sKey]) {
    return result[sKey]
  } else {
    return "no Match AnyThing"
  }
}

测试调用

let url = "http://www.example.com?key=1&key=2&key=3&test=4#xixi"
let key = "key"
getUrlParams(url, key);   // 输出 [1, 2, 3]

相关文章

网友评论

      本文标题:练习1--解析URL参数

      本文链接:https://www.haomeiwen.com/subject/xwtfqltx.html