【JavaScript 高级程序设计阅读笔记】JSON

JSON是JavaScript的一个严格的自己,利用了JavaScript中的一些模式来表示结构化数据,它是一种数据格式,不是一种编程语言。

1、语法
JSON的语法可以表示以下三种类型的值:(1)简单值(2)对象(3)数组

(1) 简单值 :字符串、数值、布尔值和null,不支持undefined
(2) 对象
          与JavaScript对象字面量相比,JSON对象有几个地方不一样:
          ① 没有声明变量(JSON中没有变量的概念)
          ② 没有末尾的分号
          ③ 对象的属性必须加双引号
比如:
{
     “name”:“jack”,
     “age”:23

          对象中可以嵌套对象
(3) 数组
          数组中也没有变量和分号,比如
          [ 25,“hi”,true ]
2、解析与序列化

(1)JSON对象
JSON对象有两个方法:stringify()和parse(),分别用于吧JavaScript对象序列化为JSON字符串和把JSON字符串解析为原生JavaScript值。

var jsonText= JSON.stringify(book)//序列化为JSON字符串
var bookcopy=JSON.parse(jsonText)//解析为原生JavaScript值

(2)stringify()

除了要序列化的JavaScript对象外,还可以接受两个参数。

①  过滤器,可以是数组也可以是一个函数
          如果过滤器参数是数组,那么JSON.stringify()的结果中将只包含数组中列出的属性
          如果过滤器是函数,则返回的是相应的键值
②  格式选项,表示是否在JSON字符串中保留缩进
          var jsonText=JSON.stringify(book,null,4);//缩进4个字符
序列化对象的顺序
①  如果存在toJSON()方法而且能够通过它取得有效的值,则调用该方法。否则返回对象本身
②  如果提供了第二个参数,应用这个函数过滤器。传入函数过滤器的值是第(1)步返回的值
③  对第(2)步返回的每个值进行相应的序列化
④  如果提供了第三个参数,执行相应的格式化。

(3) parse()
JSON.parse( )方法也可以接受一个参数,还原函数,将在每个键值对儿上调用。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值