作用
一句话:json.parse和json.stringify的作用就是将数据格式在对象与字符串之间转换。
区别
- json.parse 将字符串转为对象
- json.stringify 将对象转为字符串(可联想记忆:string就是转成字符串)
【具体效果】可参考以下代码和结果:
let arr = [1,2,3];
console.log(JSON.stringify(arr)); //'[1,2,3]'
console.log(typeof JSON.stringify(arr)); //string
let string = '[1,2,3]';
console.log(JSON.parse(string)) //[1,2,3]
console.log(typeof JSON.parse(string)) //object
应用场景
1、浏览器创建、获取(sessionStorage、localStorage)数组内容
比如创建sessionStorage
sessionStorage.setItem("keyName",JSON.stringify(data))
传参成功之后我们肯定要获取使用,相对应的我们要用JSON.parse()将存进去的字符串转换为json对象,比如获取某个sessionStorage
let array = JSON.parse(sessionStorage.getItem("keyName"));
2、路由(浏览器地址)传参、获取数组内容
为什么使用——Why?
现在互联网传输的数据一般都是json格式
将数据传出去之前,先用JSON.stringify把数据转成json字符串格式,方便传输;
如果不使用JSON.stringify()存进去的将是[object object],所以如果我们开发中遇到了获取内容的时候是[object object]不妨试试JSON.stringify()
接收到数据后,用JSON.parse把数据转成对象格式以便本地使用。
注意:
使用JSON.parse时,处理的是字符串,所以要用【单引号】包裹(注意必须是单引号,而不能是双引号),否则会报错。
若有任何意见 / 建议 / 疑问,欢迎留言交流,看到必回!