所以我想遍歷存儲在瀏覽器的本地存儲中的JSON對象。 基本上JSON對象的外觀,並添加這樣的:Javascript遍歷本地存儲JSON對象(香草Javascript)
if (localStorage.getItem("playerHighscoreObject") == undefined) {
playerHighscoreList = [
{'name': "Ben", 'score': 40},
{'name': "Joe", 'score': 44},
{'name': "Anna", 'score': 51},
{'name': "Mitch", 'score': 59},
{'name': "Abdi", 'score': 63}
];
localStorage.setItem("playerHighscoreObject", JSON.stringify(playerHighscoreList));
}
else {
playerHighscoreList = localStorage.getItem("playerHighscoreObject");
}
我再要遍歷對象和檢查的「分數」鍵和值與一個潛在的新條目。
function saveScore() {
var key = "score";
console.log(playerHighscoreList);
for (key in playerHighscoreList) {
if (playerHighscoreList.hasOwnProperty(key)) {
var val = playerHighscoreList[key];
console.log(val);
}
}
}
但是,當我這樣做時,我得到135日誌中未定義。即使我打印的JSON對象,它顯示爲它應該是
[{"name":"Ben","score":40},{"name":"Joe","score":44},{"name":"Anna","score":51},{"name":"Mitch","score":59},{"name":"Abdi","score":63}]
我在做什麼錯在這裏?
編輯: 建議重複使用jQuery來解決問題。我不希望使用jQuery,而是在標題中描述的香草JavaScript。
Dupe? http://stackoverflow.com/questions/3138564/looping-through-localstorage-in-html5-and-javascript – httpNick
是否有'JSON.parse'? – Dimava
@Dimava:哦,我完全錯過了。 'stringify'在那裏,但'parse'丟失。 –