我使用以下内容将对象存储在本地存储中:
localStorage.setItem('obj', JSON.stringify(obj));
我想每秒添加多个 obj 实例,并给出一个时间键。如何附加 obj 而不是每次都更改它?
我使用以下内容将对象存储在本地存储中:
localStorage.setItem('obj', JSON.stringify(obj));
我想每秒添加多个 obj 实例,并给出一个时间键。如何附加 obj 而不是每次都更改它?
var oldItems = JSON.parse(localStorage.getItem('itemsArray')) || [];
var newItem =
{
'product-name': itemContainer.find('h2.product-name a').text(),
'product-image': itemContainer.find('div.product-image img').attr('src'),
'product-price': itemContainer.find('span.product-price').text()
};
oldItems.push(newItem);
localStorage.setItem('itemsArray', JSON.stringify(oldItems));
您可能还需要考虑使用对象而不是数组,并使用产品名称作为键。这将防止重复条目出现在 LocalStorage 中。
基本上,您必须检索对象,添加您的值,然后将其写回localStorage
.
var obj = JSON.parse( localStorage.getItem('obj') ) || {};
obj[ timestamp ] = 'newvalue';
localStorage.setItem('obj', JSON.stringify(obj));
有两种选择:
getItem
,然后推送/设置新元素,然后使用setItem
.localStorage.setItem('obj:' + x.time, x)
)和for (x in localStorage) {...}
用于查找所有键的用途来存储对象。function store()
{
var person=new Object();
str = [str stringByReplacingOccurrencesOfString:@" " withString:@"%20"];
person.firstname="John";
person.lastname="Doe";
person.age=50;
person.eyecolor="blue";
localStorage.setObj("temp", person);
var obj=localStorage.getObj("temp");
for(var i in obj)
alert(i+"--"+obj[i]);
}
Storage.prototype.setObj = function(key, obj) {
return this.setItem(key, JSON.stringify(obj))
}
Storage.prototype.getObj = function(key) {
return JSON.parse(this.getItem(key))
}