JS如何获取地址栏url后面的参数?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS如何获取地址栏url后面的参数?相关的知识,希望对你有一定的参考价值。

本文不再更新,可能存在内容过时的情况,实时更新请移步我的新博客:JS如何获取地址栏url后面的参数?

这里提供了两种获取地址栏url后面参数的方法:

方式1

传参:

window.location.href = "/html/bsp/user/userEdit.html?name=四个空格&age=2";

获取参数:

function getParams() {
    var params = {};
    if (this.location.search.indexOf("?") == 0 && this.location.search.indexOf("=") > 1) {
        var paramArray = unescape(this.location.search).substring(1, this.location.search.length).split("&");
        if (paramArray.length > 0) {
            paramArray.forEach(function (currentValue) {
                params[currentValue.split("=")[0]] = currentValue.split("=")[1];
            });
        }
    }
    return params;
}

var name = getParams().name;

方式2

传参:

var params = {};
params['name'] = '四个空格';
params['age'] = '2';
window.location.href = "/html/bsp/user/userEdit.html?" + new URLSearchParams(params);

获取参数:

function urlParams(){
    var searchParams;
    if (this.location.search.indexOf("?") == 0 && this.location.search.indexOf("=") > 1) {
        searchParams = new URLSearchParams(this.location.search.substring(1, this.location.search.length));
    }
    return searchParams;
}

var name = urlParams().get('name');

参考文章:

  1. URLSearchParams
  2. Is there any native function to convert json to url parameters?

以上是关于JS如何获取地址栏url后面的参数?的主要内容,如果未能解决你的问题,请参考以下文章

java获取浏览器地址栏地址

js如何获取地址栏传递的参数值?

js如何获取地址栏加密参数

JS获取URL的参数

如何使用js获取修改URL

JS获取地址栏url参数