簡體   English   中英

windows Javascript 之間的共享對象

[英]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'));

使用localStorageJSON將您的對象存儲為字符串:

環境:

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM