摘要:事件接口儲存的數(shù)據(jù)發(fā)生變化時,會觸發(fā)事件,可以指定這個事件的監(jiān)聽函數(shù)。這個實例對象繼承了接口,有幾個特有的屬性,都是只讀屬性。字符串,表示發(fā)生變動的鍵名。對象,返回鍵值對所在的整個對象。
概述
sessionStorage保存的數(shù)據(jù)用于瀏覽器的一次會話(session),當(dāng)會話結(jié)束(通常是窗口關(guān)閉),數(shù)據(jù)被清空;localStorage保存的數(shù)據(jù)長期存在,下一次訪問該網(wǎng)站的時候,網(wǎng)頁可以直接讀取以前保存的數(shù)據(jù)。除了保存期限的長短不同,這兩個對象的其他方面都一致。
保存的數(shù)據(jù)都以“鍵值對”的形式存在
所有的數(shù)據(jù)都是以文本格式保存
某個網(wǎng)頁存入的數(shù)據(jù),只有同域下的網(wǎng)頁才能讀取,如果跨域操作會報錯
屬性和方法Storage 接口只有一個屬性。
Storage.length:返回保存的數(shù)據(jù)項個數(shù)。
Storage.setItem()無返回值
window.sessionStorage.setItem("key", "value");
window.localStorage.setItem("key", "value");
window.localStorage.foo = "123";
window.localStorage["foo"] = "123";
window.localStorage.setItem("foo", "123");
Storage.key()接受一個整數(shù)作為參數(shù)(從零開始),返回該位置對應(yīng)的鍵值。
for (var i = 0; i < window.localStorage.length; i++) {
console.log(localStorage.key(i));
}
Storage 接口儲存的數(shù)據(jù)發(fā)生變化時,會觸發(fā) storage 事件,可以指定這個事件的監(jiān)聽函數(shù)。
window.addEventListener("storage", onStorageChange);
監(jiān)聽函數(shù)接受一個event實例對象作為參數(shù)。這個實例對象繼承了 StorageEvent 接口,有幾個特有的屬性,都是只讀屬性。
StorageEvent.key:字符串,表示發(fā)生變動的鍵名。如果 storage 事件是由clear()方法引起,該屬性返回null。
StorageEvent.newValue:字符串,表示新的鍵值。如果 storage 事件是由clear()方法或刪除該鍵值對引發(fā)的,該屬性返回null。
StorageEvent.oldValue:字符串,表示舊的鍵值。如果該鍵值對是新增的,該屬性返回null。
StorageEvent.storageArea:對象,返回鍵值對所在的整個對象。也說是說,可以從這個屬性上面拿到當(dāng)前域名儲存的所有鍵值對。
StorageEvent.url:字符串,表示原始觸發(fā) storage 事件的那個網(wǎng)頁的網(wǎng)址。
注意,該事件有一個很特別的地方,就是它不在導(dǎo)致數(shù)據(jù)變化的當(dāng)前頁面觸發(fā),而是在同一個域名的其他窗口觸發(fā)
也就是說,如果瀏覽器只打開一個窗口,可能觀察不到這個事件。比如同時打開多個窗口,當(dāng)其中的一個窗口導(dǎo)致儲存的數(shù)據(jù)發(fā)生改變時,只有在其他窗口才能觀察到監(jiān)聽函數(shù)的執(zhí)行??梢酝ㄟ^這種機(jī)制,實現(xiàn)多個窗口之間的通信。
參考鏈接
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/106155.html
摘要:為所有對外提供服務(wù)的資源實現(xiàn)了一套通用的符合要求的操作接口,每個服務(wù)接口負(fù)責(zé)處理一類資源對象。該接口最終返回了的和清除操作資源的接口。 源碼版本 Kubernetes v1.5.0 簡介 k8s的各個組件與apiServer交互操作各種資源對象,最終都會落入到etcd中。k8s為所有對外提供服務(wù)的Restful資源實現(xiàn)了一套通用的符合Restful要求的etcd操作接口,每個服務(wù)接口負(fù)...
摘要:前言了解的同學(xué)都知道,對外提供接口提供查詢,監(jiān)聽集群資源狀態(tài)的服務(wù),主要就做一件事,就是如何將接口調(diào)用映射到對后端存儲比如的增刪改查訪問,在設(shè)計的時候考慮到是個快速迭代的開源項目,很多接口版本可能在未來版本發(fā)生變化,因此如何設(shè)計一個擴(kuò)展 前言 了解 k8s 的同學(xué)都知道,kube-apiserver 對外提供 RESTful API 接口提供 查詢,監(jiān)聽集群(資源)狀態(tài)的服務(wù),kube...
摘要:前言了解的同學(xué)都知道,對外提供接口提供查詢,監(jiān)聽集群資源狀態(tài)的服務(wù),主要就做一件事,就是如何將接口調(diào)用映射到對后端存儲比如的增刪改查訪問,在設(shè)計的時候考慮到是個快速迭代的開源項目,很多接口版本可能在未來版本發(fā)生變化,因此如何設(shè)計一個擴(kuò)展 前言 了解 k8s 的同學(xué)都知道,kube-apiserver 對外提供 RESTful API 接口提供 查詢,監(jiān)聽集群(資源)狀態(tài)的服務(wù),kube...
摘要:類實現(xiàn)了對象存儲映射表,應(yīng)用于需要唯一標(biāo)識多個對象的存儲場景。在之前僅能存儲對象,之后可以針對每個對象添加一條對應(yīng)的數(shù)據(jù)。實際上他們并沒有直接的關(guān)系。 1. 定義 php.net上的定義 The SplObjectStorage class provides a map from objects to data or, by ignoring data, an object set. ...
摘要:前言本文介紹是如何訪問后端存儲相關(guān)源代碼主要在通用接口原文注釋定義了后端存儲的通用接口,主要是一些增刪改查方法,這種面向接口編程,將實現(xiàn)和設(shè)計分離的設(shè)計提高了軟件的可擴(kuò)展性,降低了模塊間的耦合度,比如只要我們提供的具體實現(xiàn),那么除了使用 前言 本文介紹 kube-apiserver 是如何訪問 etcd 后端存儲 相關(guān)源代碼主要在 kubernetes/staging/src/k8s....
閱讀 2661·2021-10-19 11:41
閱讀 2485·2021-09-01 10:32
閱讀 3432·2019-08-29 15:21
閱讀 1876·2019-08-29 12:20
閱讀 1220·2019-08-29 12:13
閱讀 686·2019-08-26 12:24
閱讀 2595·2019-08-26 10:26
閱讀 909·2019-08-23 18:40