localStorage是HTML5提供的再客户端实现本地存储的一种方法,但是localStorage方法只能存储字符串数据,有时候我们需要存储对象到本地比如:JSON;那么,localStorage怎么才能实现JSON数据的存储与读取呢?
思路:既然localStorage只能存储字符串数据,那么我们就可以先把JSON对象转换成字符串,然后用localStorage方法存储起来;等到需要用到这些JSON数据时,先把它们读取出来,然后再转换成JSON对象加以利用。
具体代码如下:
1
2
3
4
5
6
7
8
9
|
var
jsonData = {
'name'
:
'张三'
,
'age'
: 29};
// 定义一个JSON对象
var
str_jsonData = JSON.stringify(jsonData);
console.log(
typeof
(str_jsonData));
// string
localStorage.setItem(
'localData'
, str_jsonData);
// 存储字符串数据到本地
var
getLocalData = localStorage.getItem(
'localData'
);
// 读取字符串数据
console.log(
typeof
(getLocalData));
// string
var
jsonObj = JSON.parse(getLocalData);
console.log(
typeof
(jsonObj));
// obj
console.log(jsonObj.age);
// 29
|
扩展:
stringify()用于从一个对象解析出字符串;
parse()用于从一个字符串中解析出json对象。
https://www.cnblogs.com/webhome/p/6394228.html