[英]JavaScript local storage: Requesting all data?
有沒有辦法在一個調用中檢索本地存儲中的所有數據?
不使用特定鍵(getItem('key')。
我喜歡的是加載所有數據,然后檢查它們的特定前綴。
Object.getOwnPropertyNames(localStorage)
.filter(key => localStorage[key].startsWith("e"))
.map(key => localStorage[key]);
這會給你所有的鑰匙
var local = localStorage;
for (var key in local) {
console.log(key);
}
您也可以使用Object.keys()
。
Object.keys()
方法返回給定對象自己的可枚舉屬性的數組,其順序與for ... in循環所提供的順序相同(區別在於for-in循環枚舉原型鏈中的屬性為:好)。
console.log(Object.keys(localStorage))
如果要獲取某些帶有您的自定義前綴的靜態項目,則可以首先檢索所有localStorage
密鑰,對其進行過濾,然后檢索數據:
ES5
var prefix = 'your-prefix:'
var filteredStorage = Object.keys(localStorage)
.filter(function(key) {
return key.startsWith(prefix)
})
.map(function(key){
return localStorage.getItem(key)
})
ES2015
let prefix = 'your-prefix:'
let filteredStorage = Object.keys(localStorage)
.filter(key => key.startsWith(prefix))
.map(key => localStorage.getItem(key))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.