利用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 全局变量的修改,为网页开发中数据的共享和传递提供了一种实用的解决方案,能够有效提升用户体验和开发效率。

TAGS: 修改方法 Cookie 页面间数据传递 JS全局变量

欢迎使用万千站长工具!

Welcome to www.zzTool.com