首页 > 文章列表 > 如何在 JavaScript 函数中修改全局变量并让其他网页访问?

如何在 JavaScript 函数中修改全局变量并让其他网页访问?

370 2024-12-08

如何在 JavaScript 函数中修改全局变量并让其他网页访问?

在 js 函数中修改全局变量

问题描述

如何在一个网页中修改全局变量的值,让另一个网页也能使用修改后的值?

解决方法

在函数中使用全局变量时,实际上是在函数中创建了一个局部变量,而不会修改全局变量。要修改全局变量,可以使用以下方法:

使用 cookie

可以将变量值存储在 cookie 中。在另一个页面读取 cookie 的值,即可获取修改后的全局变量值。

// 在 t1.js 中
$('#tb').click(function () {
  name = "世纪工程";
  document.cookie = "name=" + name;
});
// 在 t2.js 中
$(function () {
  var name = getCookie("name");
  document.getElementById("tp").textContent = name;
});

function getCookie(name) {
  var cookies = document.cookie.split(";");
  for (var i = 0; i < cookies.length; i++) {
    var cookie = cookies[i].trim();
    if (cookie.startsWith(name + "=")) {
      return cookie.substring(name.length + 1);
    }
  }
  return "";
}

其他方法

除了使用 cookie,还可以使用下列方法来修改全局变量:

  • 使用 html5 的 localstorage 和 sessionstorage 对象
  • 使用一个外部 javascript 库,如 redux
  • 通过事件广播或消息传递机制在页面之间共享数据
来源:1731208750