[英]How to store object in localStorage
我有以下代碼:
localStorage.setItem("ActiveDataOfpModel", iHandle.find("ul li.pModel.active"));
當我在控制台中檢查“ActiveDataOfpModel”值時,我得到“[object Object]”。 如何將實際對象存儲在“ActiveDataOfpModel”中並檢索其屬性。 即我想做以下事情:
var value = localStorage.getItem("ActiveDataOfpModel").attr("data-id")
我確實嘗試過
var value = JSON.parse(localStorage.getItem("ActiveDataOfpModel")).attr("data-id")
但它不工作
您只能將字符串存儲在本地存儲中。
您可以使用JSON.stringify(someObject)
簡單對象編碼為 JSON(它們必須僅包含 JSON 數據類型,例如對象、數字和字符串)作為字符串。
var value = JSON.parse(localStorage
……這就是之后如何將 JSON 轉換回對象。
你的代碼iHandle.find("ul li.pModel.active")
暗示你沒有處理一個簡單的對象。 這是我希望返回 DOM 元素或類似元素的東西。
您需要從中提取您關心的數據,將其存儲在一個對象中,將其存儲在 JSON 和 localstorage 中,並編寫更多代碼以在提取數據時將簡單數據轉換回完整對象然后。
嘗試這個:
在保存到 LocalStorage 之前將其轉換為 String
localStorage.setItem('key', JSON.stringify(data));
從 LocalStorage 讀取時轉換回 JSON 對象
data = JSON.parse(localStorage.getItem('key');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.