使用JS获取URL查询参数的两种方法

电视直播网365 ⌚ 2026-07-18 20:07:49 👤 admin 👁️ 7591 ❤️ 96
使用JS获取URL查询参数的两种方法

1、手动截取封装

下面这个方法是自己封装的一个获取url上参数的方法:

function getUrlParams(url = location.href) {

let urlStr = url.split('?')[1] || ''

let obj = {

};

let paramsArr = urlStr.split('&')

for (let i = 0, len = paramsArr.length; i < len; i++) {

const num = paramsArr[i].indexOf('=')

let arr = [paramsArr[i].substring(0, num), paramsArr[i].substring(num + 1)]

obj[arr[0]] = arr[1];

}

return obj

}

直接使用的可以返回一个对象,里面包含我们url上的参数,key和对应value值。

getUrlParams('https://blog.csdn.net/qq_43291759?type=blog&aaa=123&bbb===456&ccc=789')

//得到

{

type: 'blog', aaa: '123', bbb: '==456', ccc: '789'}

使用的时候我们直接解构出来或者点出来使用即可。getUrlParams上面的循环在使用=分割,为什么要找到第一等号的位置然后再次截取,是因为有的参数可能拼接了等于,或者是说这个对应的值是一个奇怪的字符串。

getUrlParams('https://blog.csdn.net/qq_43291759?type=blog&aaa=123&bbb===456&ccc=789&ddd=123=456=789')

//执行结果

{

type: 'blog', aaa: '123', bbb: '==456', ccc: '789', ddd: '123=456=789'}

其实我们想要的ddd结果为123=456=789这才是正确的,如果不取第一个等号去进行分割,这肯定是拿不到我们想要的结果的。

2、URLSearchParams

let ParamsPage = new URLSearchParams(location.search)

ParamsPage.get('参数名')

好,就先这样

相关数据

宝可梦朱紫神兽捕捉攻略-神兽封印位置及捕捉方法-二级神兽

宝可梦朱紫神兽捕捉攻略-神兽封印位置及捕捉方法-二级神兽

《宝可梦:朱紫》神兽捕捉攻略,神兽封印位置及捕捉方法。《宝可梦:朱紫》二级神兽封印位置,古玉鱼,古简蜗,古剑豹,古鼎鹿捕捉方法

09-03 电视直播网365
两个「方舟」的不同命运,这是关于游戏关服的故事

两个「方舟」的不同命运,这是关于游戏关服的故事

编者按:本文来自微信公众号“APPSO”(ID:appsolution),作者:方玮玲,36氪经授权发布。 从官方美术设定集上线 10 分钟预售超过 10 万份,到音

01-27 mobile3656
yaman美容仪能每天用吗 频繁使用会给肌肤造成负担

yaman美容仪能每天用吗 频繁使用会给肌肤造成负担

yaman美容仪能每天用吗 yaman美容仪不能每天用,如果使用太频繁,就会对肌肤造成负担。就算红光护理对肌肤很有利,也不能每天都照,要给肌

08-12 mobile3656
《英雄聯盟》無限火力cd上限介紹

《英雄聯盟》無限火力cd上限介紹

免費能量序號 禮包碼 兌換碼 每日更新 金幣大師 (Coin Master) 大富翁 GO (Monopoly GO) 蛋仔派對 超能世界 豬遊記 LINE金幣派對 夢幻海島 豬來了 薑餅

07-02 电视直播网365
番号下载:可能需要使用特定的“番号下载”方式来获取

番号下载:可能需要使用特定的“番号下载”方式来获取

在数码时代,我们经常需要从互联网上下载各种资源,比如音乐、电影、软件等。而对于一些特定的资源,可能需要使用特定的“番号下载”方

06-29 mobile3656
抖音怎么取消自动播放?具体方法一览

抖音怎么取消自动播放?具体方法一览

抖音怎么取消自动播放?我们在进入抖音的时候,视频总会自动播放。在公众场合就会比较不方便,那么我们该怎么设置让它不自动播放呢?本

08-15 电视直播网365