技术文摘
利用Cookie实现不同页面间JS全局变量的修改方法
2025-01-09 15:15:12 小编
在网页开发中,常常会遇到需要在不同页面间共享和修改 JS 全局变量的需求。利用 Cookie 是一种有效的实现方式。
Cookie 是存储在用户浏览器中的小型文本文件,它可以在不同页面间传递数据。我们要了解如何通过 JavaScript 来操作 Cookie。
创建和设置 Cookie 非常简单。在 JavaScript 中,可以使用以下代码来设置一个 Cookie:
function setCookie(name, value, days) {
let expires = "";
if (days) {
let date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toUTCString();
}
document.cookie = name + "=" + (value || "") + expires + "; path=/";
}
这个函数接受三个参数:Cookie 的名称、值以及过期天数。通过它,我们就可以方便地创建和设置 Cookie。
那么,如何读取 Cookie 呢?以下代码可以实现:
function getCookie(name) {
let nameEQ = name + "=";
let ca = document.cookie.split(';');
for (let i = 0; i < ca.length; i++) {
let c = ca[i];
while (c.charAt(0) === " ") c = c.substring(1, c.length);
if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);
}
return null;
}
当我们在一个页面修改了全局变量的值后,想要在其他页面也能使用这个新值时,就可以借助 Cookie。例如,在页面 A 中,我们修改了一个全局变量 globalVariable,并将其值存储到 Cookie 中:
let globalVariable = "新的值";
setCookie("globalVariableCookie", globalVariable, 1);
然后在页面 B 中,我们读取这个 Cookie 的值,并将其赋值给页面 B 的全局变量:
let receivedValue = getCookie("globalVariableCookie");
let globalVariableInPageB = receivedValue;
通过这种方式,我们就实现了在不同页面间对 JS 全局变量的修改和共享。不过,需要注意的是,Cookie 存储的数据量有限,并且由于安全原因,要避免在 Cookie 中存储敏感信息。
利用 Cookie 实现不同页面间 JS 全局变量的修改,为网页开发中数据的共享和传递提供了一种实用的解决方案,能够有效提升用户体验和开发效率。
- SpringBoot 启动时自动执行代码的多种方式
- ElasticSearch 集群部署全攻略
- 谈谈简易的 Static 关键字
- 若由你来设计进程调度,该如何做?
- 同事询问:我的 Service 为何无法注入?
- 三分钟带你轻松入门 TypeScript
- 五个实用的 Python 自动化脚本
- 怎样写出更“美”的 CSS 代码
- JavaScript 扫雷游戏制作教程:手把手教学
- 2022 年九大测试自动化预测:自动化视觉测试
- 为你查漏补缺 Redis 知识面
- 2022 年热门的 JavaScript 框架
- 漫议金丝雀部署
- SpringBoot 统计和监控 SQL 运行情况的方法
- Spring Boot AOP 入门指南