我有一个应用程序可以在同一个域中打开几个窗口(使用javascript)。
我想在这些窗口之间共享一些javascript对象(例如,包含一些配置的对象)。
是否可以在javascript中执行此操作以及如何执行此操作?
感谢。
答案 0 :(得分:2)
有两种可能性:本地存储和会话存储
会话存储存储会话持续时间的值,当浏览器关闭并重新打开时,该值将被删除。
// Store value
sessionStorage.setItem('key', 'value');
//or
sessionStorage['key'] = value;
// Retrieve value
alert(sessionStorage.getItem('key'));
本地存储存储超出会话持续时间的值,可以在关闭并重新打开浏览器后检索该值。
// Store value
localStorage.setItem('key', 'value');
//or
localStorage['key'] = value;
// Retrieve value
alert(localStorage.getItem('key'));
答案 1 :(得分:0)
使用localStorage
和JSON
将对象存储为字符串:
环境:
window.localStorage.setItem('yourKey', JSON.stringify(yourObject));
获得:
var yourObject = JSON.parse(window.localStorage.getItem('yourKey'));
localStorage
数据将在您的所有网页上共享,只要它们存在于同一个网域中。