HuangHongRui / huanghongrui.github.io

:poultry_leg: MyBlog | Keep track of every moment.. :icecream:
http://blog.luckyman.xyz/
3 stars 1 forks source link

JSON #3

Open HuangHongRui opened 6 years ago

HuangHongRui commented 6 years ago

JSON(JavaScript Object Notation)轻量级的数据交换语言,以文字为基础,且易于让人阅读。 一种数据格式 出生:2001年 属于Js一个严格子集 与XML相比,不必创建DOM对象。 3种值为: 简单值 | 对象 | 数组 不支持: 变量 | 对象实例 | 函数 要求属性必须加双引号“ ”,分隔号使用 逗号代替。

JavaScript提供方法: JSON.stringify 将对象转换为JSON。(目标,函数/数组过滤器,缩进参数) JSON.parse 将JSON转换回对象。(目标,还原过滤器/如日期还原)

toJSON()方法 有时,JSON.stringify 不能满足某对象进行自定义序列化的需求,可给对象定义该方法,返回其自身的JSON数据格式。

如吧一个对象传入JSON.stringify()中,序列化该对象的顺序过程:

  1. 查看是否有toJSON方法,有的话,那么调用并返回有效值,没有就返回对象本身。
  2. 如果第二个参数(过滤器)存在,那调用它,返回结果为第一步的返回值。
  3. 对第2步的返回值进行相应序列化。
  4. 如果提供第三个参数(缩进) 那么执行格式化。

方法: JSON.stringify(student) 接收对象并将其转换为字符串。 由此产生的JSON字符串是一个叫做JSON编码或序列化或字符串化或编组的对象。再已经准备好把它发送到线上,或者放进数据存储中。

样板:

{
    "num" : 123,
    "ary" : [1,2,3,'a','b','c'],
    "obj" : { 
        "a" : 1, 
        "b" : "gaga"
    },