我正在尝试从localStorage检索值,但下面的代码正在浏览器控制台中打印NULL
,而不是数组对象值!有谁能帮我这个吗
var ary = [];
function setFavorite(n, v) {
alert("a=" + n + " ,v=" + v);
var obj = {};
obj[n] = v;
ary.push(obj);
// Put the object into storage
localStorage.setItem('testObject', JSON.stringify(ary));
// Retrieve the object from storage
var retrievedObject = localStorage.getItem('ary');
console.log('retrievedObject: ', JSON.parse(retrievedObject));
}
setFavorite("Power", "Power Converter"); //calling above function from a button click
您正在testObject
键下添加对象,但您正在获取ary
键的值,因此不返回任何内容。
UDATE:JSFiddle提供了一个简单的示例,用于从localStorage
添加和检索数组
嗯,我猜是打字错误:"ary"尚未存储。
您存储了"testObject"。
var retrievedObject = localStorage.getItem('testObject');
应该做到这一点。