所以我想遍历存储在浏览器的本地存储中的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'丢失。 –