美文网首页Web开发
JS:获取指定的url参数,或者全都要(以对象的形式)

JS:获取指定的url参数,或者全都要(以对象的形式)

作者: 以气御码 | 来源:发表于2020-07-04 16:43 被阅读0次

进入我的主页,查看更多JS的分享!
我的代码有多短,本文章就有多短!(ㅍ_ㅍ)

1. 思路

获取浏览器得参数的字符串,判断并转为对象,如果没有指定参数名,直接返回该对象。

2. 代码

需要说的话都在注释里了,先贴上代码:(好像明白了程序员为啥话不多)

/**
 * 获取:当前链接的参数
 * 若不指定参数,则以对象的形式返回全部参数
 * 若指定参数名,则只返回对应的值
 * 处理:中文解码
 * 测试:"?id=123&name=哈哈哈"
 * 结果:{id: "123", name: "哈哈哈"}
 */
var getLocationParam = (name) = >{
  let param = window.location.search.substr(1);
  if (!param) {
    return undefined;
  } else {
    let pArr = param.split("&");
    let res = {};
    for (let i = 0; i < pArr.length; i++) {
      let item = pArr[i].split("=");
      res[item[0]] = item[1] ? decodeURI(item[1]) : null;
    }
    return !name ? res: res[name];
  }
};

如果参数有中文,直接用"decodeURI()",而"unescape()"并不适用。(测试了QQBrowser、Chrome、IE9-11)
运行:

console.log(getLocationParam("id"));
//输出:123
console.log(getLocationParam("name"));
//输出:哈哈哈
console.log(getLocationParam("due"));
//输出:undefined
console.log(getLocationParam());
//输出:{id: "123", name: "哈哈哈"}

下载文件(CSDN)
还有一个代码,是用正则来获取指定的参数。嘛,直接贴上代码看看吧:

/**
 * 获取:当前链接的指定的参数
 * 方法:采用正则
 */
var getLocationQueryByName = (name) = >{
  var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
  var r = window.location.search.substr(1).match(reg);
  if (r != null) return decodeURI(r[2]);
  return null;
};

相关文章

  • JS:获取指定的url参数,或者全都要(以对象的形式)

    进入我的主页,查看更多JS的分享!我的代码有多短,本文章就有多短!(ㅍ_ㅍ) 1. 思路 获取浏览器得参数的字符串...

  • 获取url中的参数

    获取 url 中的参数 指定参数名称,返回该参数的值 或者 空字符串 不指定参数名称,返回全部的参数对象 或者 {...

  • js日常方法总结

    封装函数 f,使 f 的 this 指向指定的对象 获取 url 中的参数 指定参数名称,返回该参数的值 或者 空...

  • 练习1--解析URL参数

    题目描述获取 url 中的参数 指定参数名称,返回该参数的值 或者 空字符串 不指定参数名称,返回全部的参数对象 ...

  • Days25 笔试-JS

    1.封装函数 f,使 f 的 this 指向指定的对象 2.获取url参数 (2)获取url中指定参数 使用正则表...

  • 获取指定url参数

    获取指定url参数 获取指定url的指定参数 浏览器类型

  • js操作浏览器Url

    1.获取url中的参数 2.在指定url栏附加参数或替换参数值 3.删除Url中的指定参数

  • 在路由中截取网址参数

    1.vuejs取得URL中参数的值 2. js获取URL中的参数 js获取URL中的一些参数的意思location...

  • JavaScript 获取url,html文件名,参数值

    1、获取url: 2、获取url中的文件名: 3、获取url中的指定参数的值:jquery从html路径中获取参数...

  • Ajax

    将传入的对象转成url形式 url?key=value&key=value 获取XML或者json数据 注意:获取...

网友评论

    本文标题:JS:获取指定的url参数,或者全都要(以对象的形式)

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