JSON的语法

    之前上Ajax的时候也有听老师说过json,当时候略略地看网上的教程,感觉也没什么收获,这次我想要认真地了解一下json,毕竟现在json这么流行。

    之前XML一直都是互联网上传输结构化数据的事实标准,方便了服务器与服务器之间的通信,但是因为有部分人觉得XML使用起来比较繁琐,所以关于这个问题上提出了json,它是javascript的一个严格的子集,利用了javascript中的一些模式来表示结构化数据。其实总的来说就是为了让读写结构化数据有更好的方式而已,所以其实json它不是一种编程语言,它只是一种数据格式。正因为只是数据格式,而不会仅仅只局限于javascript,因为很多编程语言都有针对json的解析器和序列化器的。它只不过与javascript有相似的语法而已。

    json语法

    json的语法是可以表示为三种类型的值:

1.简单值:简单值中与javascript中的有相同的语法,我们可以在json中表示字符串,布尔值,数值,以及null。但是有一点需要注意的是:json是不支持javascript中的undefined的。

2.对象:对象是作为一种复杂的数据类型,表示的是一组无序的键值对。而每个键值对的值都可以是简单值或者复杂的数据类型。

3.数组:数组也是一种复杂的数据类型,它表示一组有序的值的列表,可以通过数值索引来访问其中的值。数组的值也可以是任意类型--简单值,对象或者数组。

    json它仅仅是一种数据格式,所以它是不支持变量,函数或对象实例,它就是一种表示结构化数据的格式。


  简单值

    最简单的json数据形式就是简单值了。

简单值这个大家都应该清楚的,包括字符串,数值,布尔值,null。需要注意的是,json字符串是必须使用双引号,单引号会导致错误的。


  对象

json中的对象与javascript字面量稍微有些不同,我们来举个例子:

var person={

name:"ben",

age:29

};

这个是在javascript中创建的对象字面量的标准方式,但是json中的对象要求给属性加引号。虽然在javascript中我们也可以给属性添加双引号,这也是没有错误的。下面我们来举个关于json中的例子:

{

“name”:'Ben",

"age":29

}

这个例子可以与上述的例子进行比较,有两个不一样的地方,首先json是没有声明变量,因为json是不支持变量的;第二个是json末尾是没有分号的,因为这个不是javascript语句,所以是不需要分号的。而且还有的是属性一定要加双引号,无论在什么时候,都是必须的。


 数组

    json中第二种复杂的数据类型,json数组采用的是javascript中的数组的字面量形式。

例如以下是数组在javascript中数据的字面量:

var values=[25,"hi",true];

而在json中,我们可以采用同样的语法表示听一个数组的:

[25,"hi",true]    当然我们也是要注意的是json数组也是没有变量和分号的。

通常来说,对象和数组常常是json数据结构的最外层的形式,利用他们我们可以创造出更多更复杂的数据结构。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值