前言
上一篇讲到【JavaScript localStorage本地存储的简单使用】如何通过浏览器的本地存储来存储一些信息,但是最后也提到,浏览器本地存储无法存储JavaScript的对象,这是坏的
因为JavaScript的对象是【键值对】的集合,而JavaScript很多数据都和字符串相关,所以我们能够通过保存字符串的键值对的形式来传递对象。是不是很熟悉?
HTTP中POST提交也是在报文中以键值对的形式传输键值对集合的。其规定了一种键值对传输方式,即键=值
,键值对之间,以&
分割
键1=值1&键2=值2
于是出现了一种规范化的数据格式,叫做JSON,意为JavaScript Object Notation
, JS 对象简谱,用来规范互联网web应用中的数据传输格式,(因为web应用大量用到键值对)
JSON字符串格式简介
JSON规定了键值对集合存储的规则,即键:值
,键值对之间以逗号分隔。每个对象以{}
包围
{
键1:值1, 键2:值2}
值得注意的是,键值对中,值可以是对象、数组、数字、字符串或false,null,true,这意味着JSON格式支持嵌套对象,这是好的。
比如如下的JSON格式可以表示一个 较为 “复杂” 的嵌套对象
{
"key1":"value1", "arr":["item1", "item2", "item3"], "obj":{
"a":"123","b":"456","c":"789"}}
一句话,JSON 是 JavaScript 对象的字符串表示法,它使用文本表示一个 JavaScript 对象的信息,本质是一个字符串。----百度百科
JavaScript中使用JSON数据格式
在JavaScript中,提供了非常方便的接口,可以将JSON字符串解析为JavaScript对象,或者是将一个JavaScript对象封装为JSON字符串,这些操作是双向的。
JavaScript对象转JSON字符串
通过函数JSON.stringify()
可以实现JavaScript对象转JSON字符串,执行以下的语句,我们将obj对象封装,便乘JSON字符串
JSON.stringify(obj