$.ajax({
url: "get_cards.php",
type: "GET",
data: {selection:JSON.stringify(selection)},
success: function(data) {
var json = JSON.parse(data);
sessionStorage.setItem("json", JSON.stringify(json));
}
});
然後,在另一個文件中,我從sessionStorage的檢索JSON:的Javascript:試圖訪問一個JSON數組的元素讓我單個字符
var json = JSON.parse(JSON.stringify(sessionStorage.getItem("json")));
if(json) {
sessionStorage.removeItem("json");
}
這讓我JSON對象的數組,例如:[{'name':'Bob',...}]
。但是,當我嘗試訪問數組的第一個元素時:json[0]
,我得到'['
,當我嘗試json[0].name
時,得到undefined
。 json
的長度被報告爲159,因此它將每個單獨的字符計數爲一個元素。
編輯:當我更新到:
var json = JSON.parse(sessionStorage.getItem("json"));
if(json) {
sessionStorage.removeItem("json");
}
我得到的長度1(這是正確的),但訪問錯誤時json[0].name
:
Uncaught TypeError: Cannot read property '0' of null
at HTMLDocument.<anonymous> (studying.js:10)
at j (jquery.min.js:2)
at k (jquery.min.js:2)
你有一個字符串。使用'JSON。解析()'正確 – Weedoze
你爲什麼要將它串起來再解析一遍? – Cruiser
您已經將json字符串保存在本地存儲中,爲什麼要調用stringify兩次? – abhishekkannojia