0
点赞
收藏
分享

微信扫一扫

js 获取地址栏参数 封装方法


下面是一个 JavaScript 函数,用于获取 URL 中的参数并以对象形式返回:

//获取地址栏参数(返回对象)
    function getUrlParams() {
        var urlParams = {};
        var queryString = window.location.search;

        if (queryString) {
            queryString = queryString.replace(/^\?/, '');
            var paramPairs = queryString.split('&');

            for (var i = 0; i < paramPairs.length; i++) {
                var pair = paramPairs[i].split('=');
                var key = decodeURIComponent(pair[0]);
                var value = decodeURIComponent(pair[1] || '');
                urlParams[key] = value;
            }
        }

        return urlParams;
    }

在上面的代码中,我们定义了一个名为 getUrlParams 的函数,用于获取 URL 中的参数,并返回一个包含所有参数的对象。函数内部首先使用 window.location.search 获取 URL 中的查询字符串部分(即参数部分),然后通过解析查询字符串来填充一个名为 urlParams 的对象。

具体来说,我们首先使用 replace 方法将查询字符串中开头的问号去掉,然后使用 split 方法将查询字符串拆分成多个键值对,再使用 decodeURIComponent 方法对键和值进行解码,并将它们填充到 urlParams 对象中。最后,我们将 urlParams 返回给调用方。

您可以在自己的代码中使用这个函数来获取 URL 参数,例如:

var params = getUrlParams(); // 假设 URL 为 https://example.com?name=John&age=30 
console.log(params.name); // 输出 "John" console.log(params.age); // 输出 "30"

这将会输出一个包含 URL 所有参数的对象,其中键为参数名,值为参数值。

举报

相关推荐

0 条评论