首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在HTML5本地存储中存储javascript对象

在HTML5本地存储中存储javascript对象
EN

Stack Overflow用户
提问于 2013-08-27 07:13:24
回答 3查看 5.4K关注 0票数 3

我想在JavaScript本地存储中存储一个HTML5对象。

代码语言:javascript
复制
sessionStorage.setItem("localObj",this);

我在包含function.The标记的对象中使用了上述语句。我既不能将其转换为字符串,也不能转换为JSON。我该怎么做呢?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-08-27 07:41:53

您必须首先将对象转换为json,然后存储在本地存储中。当您想要重用存储的数据时,必须将json字符串反序列化为javascript对象,这样它就可以正常工作了。

工作样品

代码语言:javascript
复制
function setValue() {
    var obj = new user();
    var jsonObject = JSON.stringify(obj);
    sessionStorage.setItem("Gupta", jsonObject);
    getValue();
}

function user() {
    this.Name = "rahul";
    this.Age = 20;       
}

function getValue() {
    var json_string = sessionStorage.getItem("Gupta");
    var obj = JSON.parse(json_string)
    alert("Name = "+obj.Name + ", Age = " + obj.Age);
}
票数 8
EN

Stack Overflow用户

发布于 2013-08-27 07:16:08

本地存储将只存储字符串。如果不能对对象进行字符串表示,那么就无法存储它。

票数 1
EN

Stack Overflow用户

发布于 2013-08-27 07:18:47

本地存储是在设计时考虑到字符串/值对的,因此您将很难尝试存储您的对象“原样”。你要么需要“紧张”它,要么你需要看其他的东西。对先前这一问题的答复应有助于:

在HTML5 localStorage中存储对象

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18459197

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档