Javascript 在一个窗口中创建一个所有打开页面都可以看到的变量,是否可能?

Javascript 在一个窗口中创建一个所有打开页面都可以看到的变量,是否可能?,javascript,Javascript,在JavaScript中有没有办法让一个变量保持“活动”状态,并在一个窗口中打开的所有页面中都可以访问 我已经创建了两个页面dog.php和cat.php dog.php如下所示: Object.defineProperty(window, "MyWord", { get:()=>sessionStorage.getItem("MyWord"), set:(val)=>sessionStorage.setItem("MyWord", val)

在JavaScript中有没有办法让一个变量保持“活动”状态,并在一个窗口中打开的所有页面中都可以访问

我已经创建了两个页面dog.php和cat.php

dog.php如下所示:

Object.defineProperty(window, "MyWord",
    {
        get:()=>sessionStorage.getItem("MyWord"),
        set:(val)=>sessionStorage.setItem("MyWord", val)
    }
);

MyWord=“宾果”; document.getElementById(“demo”).innerHTML=window.MyWord;

使用本地存储

但请记住,此变量对于同一主机上的所有windows/未来会话都是可见的

// Store
localStorage.lastname = "Smith";
// Retrieve
document.getElementById("result").innerHTML = localStorage.lastname;

这不是一个很好的变量,但是你可以使用。要实现您的示例,您可以执行以下操作:

sessionStorage.setItem('MyWord', 'Bingo');
在第一页上,然后

document.getElementById("KittyTalks").innerHTML = sessionStorage.getItem('MyWord');
在第二页

如果你想得到一个小的爱好者,你可以。在这两个页面上,您将放置如下代码:

Object.defineProperty(window, "MyWord",
    {
        get:()=>sessionStorage.getItem("MyWord"),
        set:(val)=>sessionStorage.setItem("MyWord", val)
    }
);

然后您可以像使用常规变量一样使用它。

您可以使用localstorage:

类似于dog.php上的内容:

localStorage.setItem('MyWord', 'Bingo');
然后在cat.php上:

var myWord = localStorage.getItem('MyWord');

HTML5@Abdul-你能详细说明一下吗?LocalStorage是一种功能吗?它本质上是浏览器中的键值对存储。你只需要在适当的时候小心重置或覆盖按键times@brilliant该评论中包含了一个实际的链接——你注意到了吗?@Abdul-Ah!我懂了。谢谢。我看不出这个解决方案的缺点。。。希望有人能解释一下。哇!这真是太棒了!非常感谢。