Pau*_*aul 3 jquery html5 local-storage
我有一组项目得到保存,但我正在尝试更改一个值后,我检索它之前,我把它传递给我的PHP函数.是否可以只更改一个项目?
我的项目字符串如下所示:
var args = window.localStorage.getItem("localusers");
start=0&type=1
Run Code Online (Sandbox Code Playgroud)
我正在保存localusers项目,如下所示:
window.localStorage.setItem('localusers', $("#profile_form_id").serialize());
Run Code Online (Sandbox Code Playgroud)
我正在尝试将type的值设置为6
我找不到一个支持的方法,允许我在数组中获取/设置一个项,所以我需要迭代数组,更改值,然后再次设置localusers项?它似乎没有效率,但我看不到任何其他方式.
有什么想法或建议吗?
localstorage不返回数组或对象.它只能存储一个字符串.
人们绕过它的方式是JSON.stringify()将数组/对象传递给它setItem.然后,当用它检索它时getItem(),你运行JSON.parse()它.
假设这是一个对象,并且你已经解析了它,你可以args在发送变量之前修改它:
args.type = 6;
Run Code Online (Sandbox Code Playgroud)
为了方便这一切,这里有一个小助手,你可以打电话:
var localstorage = {
set: function (key, value) {
window.localStorage.setItem( key, JSON.stringify(value) );
},
get: function (key) {
try {
return JSON.parse( window.localStorage.getItem(key) );
} catch (e) {
return null;
}
}
};
Run Code Online (Sandbox Code Playgroud)
如果你有这个脚本,就可以设置并通过获得的物品localstorage.get和localstorage.set,它会自动将其转换为从JSON&.
| 归档时间: |
|
| 查看次数: |
12666 次 |
| 最近记录: |