[英]Shared objects between windows Javascript
我有一個應用程序可以在同一個域中打開多個窗口(使用 javascript)。
我想在這些窗口之間共享一些 javascript 對象(例如,一個包含一些配置的對象)。
是否可以在 javascript 中執行此操作以及如何執行此操作?
謝謝。
有兩種可能:本地存儲和會話存儲
會話存儲存儲會話持續時間的值,當瀏覽器關閉並重新打開時,該值被刪除。
// 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'));
使用localStorage
和JSON
將您的對象存儲為字符串:
環境:
window.localStorage.setItem('yourKey', JSON.stringify(yourObject));
得到:
var yourObject = JSON.parse(window.localStorage.getItem('yourKey'));
只要它們存在於同一個域中, localStorage
數據就會在您的所有頁面之間共享。
如果您使用window.open()
創建第二個窗口,則第二個窗口中的window.opener
可能會讓您訪問第一個窗口。 見 MDN 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.