如何在HTML5 LocalStorage/SessionStorage 中儲存非字串
與原始型別和陣列相比,將JavaScript 物件直接儲存在HTML5儲存中結果將它們轉換為字串。此限制一直是爭論的話題,導致開發人員感到困惑。
根據 HTML5 Web Storage 規範,setItem() 方法期望鍵/值對是字串。要克服此限制,請考慮以下解決方法:
JSON 序列化和反序列化
要將物件儲存在HTML5 儲存中,請使用JSON.stringify將其轉換為JSON 字串()。檢索後,使用 JSON.parse() 將 JSON 字串解析回物件。
var testObject = { 'one': 1, 'two': 2, 'three': 3 }; // Put the object into storage localStorage.setItem('testObject', JSON.stringify(testObject)); // Retrieve the object from storage var retrievedObject = JSON.parse(localStorage.getItem('testObject')); console.log('Retrieved object:', retrievedObject);
範例輸出:
Retrieved object: { one: 1, two: 2, three: 3 }
透過先前序列化物件儲存並在擷取後反序列化,您可以有效地在HTML5 儲存中儲存和檢索JavaScript 物件。
以上是如何在 HTML5 LocalStorage/SessionStorage 中儲存非字串資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!