永发信息网

前端使用localstorage为什么再用json.parse转换

答案:2  悬赏:60  手机版
解决时间 2021-01-23 07:12
前端使用localstorage为什么再用json.parse转换
最佳答案
有时候,我们需要将数据存储到sessionStorage和localStorage中,这样做的好处有:
1 缓存数据
2 减少对内存的占用
但是,storage只能存储字符串的数据,对于JS中常用的数组或对象却不能直接存储。
var obj = { name:'Jim' };
sessionStorage.obj = obj;
localStorage.obj = obj;

var arr = [1,2,3];
sessionStorage.obj = arr;
localStorage.obj = arr;上面的写法都是不能成功的!但我们可以通过JSON对象提供的parse和stringify将其他数据类型转化成字符串,再存储到storage中就可以了。请看下面的代码。
var obj = { name:'Jim' };
var str = JSON.stringify(obj);

//存入 sessionStorage.obj = str;
//读取 str = sessionStorage.obj;
//重新转换为对象 obj = JSON.parse(str);谢谢采纳!!! 还有不理解的可以继续问这方面我很行
全部回答
【json.parse方法】在前端编程语言 (如:javascript) 和 后端编程语言(如:java)中都会经常遇到,用法基本一样,都是将《字符串》转成《对象》,具体如下: 1.javascript中: var str1 = '{ "name": "cxh", "sex": "man" }';//json字符串 var str2 = { "name": "cxh", "sex": "man" };//json对象 var obj = json.parse(str1); //由json字符串转换为json对象 alert(obj.name); var last = json.stringify(str2);;//将json对象转化为json字符(这个也经常用到,所有就贴出来了) alert(last); 2.java中(以alibaba.fastjson为例): //1.json字符串的格式为 key<-->基本类型数据 string jsonstr1 = "{\"id\":1,\"name\":\"张三\",\"age\":20}"; map obj1 = (map) json.parse(jsonstr1); system.out.println(obj1+"第一个的age="+obj1.get("age")); //2.json字符串的格式为 key<-->对象类型数据 string jsonstr2 = "{\"1\":{\"id\":1,\"name\":\"张三\",\"age\":20}," + "\"2\":{\"id\":2,\"name\":\"李四\",\"age\":50}}"; map obj2 = (map) json.parse(jsonstr2); system.out.println(obj2+"第一个的age="+obj2.get("1").get("age")); //3.json字符串的格式为 key<-->不规则数据 string jsonstr3 = "{\"1\":{\"id\":1,\"name\":\"张三\",\"age\":20}," + "\"2\":{\"id\":2,\"name\":\"李四\",\"age\":50},\"total_age\":70}"; map obj3 = (map) json.parse(jsonstr3); system.out.println(obj3+"第一个的age="+obj3.get("1").get("age")); system.out.println("total_age="+obj3.get("total_age"));
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
舞·韵艺术中心(邢台平乡)地址在什么地方
单选题下列各组物质反应后,滴入KSCN溶液显红
不宁腿综合症怎么缓解
美国有杰克逊,日本有玉置浩二,中岛美雪,中
单选题关于某些工业部门布局的叙述,正确的是
明德学堂(邢台平乡)地址有知道的么?有点事想
旋转小火锅机器要多少钱
品牌女装,仓库堆放很多库存,什么方法能让仓
项城市农业局地址在什么地方,想过去办事,
英才教育(笔畅作文)地址有知道的么?有点事想
单选题关于民主集中制,下列理解正确的是①民
常青藤教育园地址在什么地方,我要处理点事!
QQ在哪里设置可以显示位置?(在说说下面会显
蓓蕾艺术中心(文明路)地址有知道的么?有点事
求一部根据真人真事改编的美国电影名字,男主
推荐资讯
读什么什么,我明白了
车之友汽车美容中心地址在什么地方,我要处理
捷顺人行摆闸价格是多少
艺苑影楼地址在哪,我要去那里办事,
博美美容美发护肤用品地址在什么地方,我要处
山谷加油站地址有知道的么?有点事想过去!
单选题下列各句中,标点符合的使用合乎规范的
阳光山脉地址有知道的么?有点事想过去!
如果p:x>2,q:x≥2,那么p是q的________条
我经常熬夜上班,东西也不怎么吃,怎么会越来越
推敲一词来源于唐代诗人那首的诗歌创作
河州清真饭馆怎么去啊,有知道地址的么
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?