所以我有一个数组stringited'ed和保存在我的localStorage'人'键下。如何更新本地存储中的json值
arr = [{"name":"a", "age": 1, "sport":"football"},
{"name":"b", "age": 2, "sport":"volley"},
{"name":"c", "age": 3, "sport":"basket"}];
localStorage.setItem('persons', JSON.stringify(arr));
当我需要更新年龄的人以名称X(可以说输入的是人与名二),我的做法是获得和分析我的localStorage的关键:
var persons = JSON.parse(localStorage.persons);
然后我做一个for循环遍历对象,并找到名称为b的对象:
for (var i = 0; i < persons.length; i++) {
if(inputName === persons[i].name){
persons[i].age += 2
localStorage.setItem("persons", JSON.stringify(aCustomers[i].age));
}
}
这似乎并不奏效。 我在循环中找到了我的匹配,但我不知道如何将年龄添加到2岁,并在我的localStorage.persons
中更新该值,而不覆盖和销毁json对象。
您正在对'aCustomers'进行字符串化。那是你要的吗? –
这是一个错误!应该是人! –
这是否解决了问题,还是有其他问题? –