21最新获取url参数的方法

使用正则表达式获取url

温故而知新,先上一下我们常规使用正则表达式去获取url参数的代码

function getParams(url, params){
      var res = new RegExp("(?:&|/?)" + params + "=([^&$]+)").exec(url);
      return res ? res[1] : '';
}

// url: xx.com?id=2&isShare=true
const id = getParams(window.location.search, 'id')

console.log(id) // 2
复制代码

然而,现在再也不用正则这么复杂去获取浏览器的查询参数啦,浏览器给我们直接提供了一个URLSearchParams接口,让我们可以对查询参数有很大的操作空间,而且比起之前使用正则,更加简洁直接

关于URLSearchParams方法

代码实现

首先把怎样使用URLSearchParams方法实现获取url参数的代码呈上

const urlSearchParams = new URLSearchParams(window.location.search);
const params = Object.fromEntries(urlSearchParams.entries());

console.log(params) // {id: '2', isShare: 'true'}
console.log(params.id) // 2
复制代码

是不是超级简单,只需要以url作为参数传入,并且创建URLSearchParams的一个实例对象,然后调用entries()这个方法,返回一个迭代协议iterator,该协议支持可以遍历所有支持健/值对的列表

此时还需要通过Object.fromEntries()这个方法去把该健/值对的列表获取到,然后我们就可以愉快地使用获取到的参数啦。

如果是不需要兼容IE的项目,可以放心食用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值