为什么localStorage不接受我的对象?

这个问题在这里已经有了答案:

  • 在HTML5 localStorage中存储对象25个答案

  • 使用JSON.stringify()设置JSONJSON.parse()JSON转换为JavaScript对象; localStorage需要设置一个字符串。


    从使用Web存储API:

    “存储对象是简单的键值存储,与对象类似,但它们在页面加载时保持不变,键和值总是字符串 (注意整数键会自动转换为字符串,就像对象所做的那样)。”

    您不能在localStorage中存储复杂的Object值。 抱歉。

    相反,你应该将你的对象序列化为一个字符串[提示: JSON.stringify() ],然后在检索它从JSON字符串解析回到Object [提示: JSON.parse() ]。


    localstorage限于字符串键/值对,在存储它之前使用JSON.stringify() ,在检索它之后使用JSON.parse()

    var testObject = { 'one': 1, 'two': 2, 'three': 3 };
    
    // Put the object into storage
    localStorage.setItem('testObject', JSON.stringify(testObject));
    
    // Retrieve the object from storage
    var retrievedObject = localStorage.getItem('testObject');
    
    console.log('retrievedObject: ', JSON.parse(retrievedObject));
    
    链接地址: http://www.djcxy.com/p/27933.html

    上一篇: Why isn't localStorage accepting my object?

    下一篇: checking for not null not working with localStorage