json初级

Json:

 javascript  Object Notation,javascript对象表示法

json并不属于javascript,他是javascript的一个严格子集,是一种数据格式,而不是一种编程语言,所以很多的语言都有针对Json的解析器和序列化器。

   json不支持变量,函数或对象实例,他就是一种表示结构化的数据格式。json一种可以写成三种表示方法:


第一种:简单值:

json中可以表示字符串,数值,布尔和null,就是不能表现成undefined。在学习json的时候给我的感觉就是和其他的格式没什么区别就是必须要用" "双引号,这也是印象最深的。javascript是弱类型的编程语言,所以给我的感觉就是一直很随意,不像是java要求的那么严格,java中严格的区别单引号和双引号,而在js(之后我也只写缩写了)里面如果是拼接字符串的时候可能会强调双引号套单引号,或者是反过来,其他的时候基本不做要求。在json中的字符串必须是双引号的,这是json和js的字符串最大区别。如"Hello world",单引号会出错。

第二种:对象:

js的对象字面量是可以给属性加上引号的,不过你之前的时候用过?见到过吗?因为js的属性是不强制要求写引号的,不过有一个这个例子:

    var obj={'0':'a','1':'b','2':'c',length:3}
    console.log(obj[0]);
    console.log(obj.length);

输出:a和3;
在js中定义一个对象字面量可以:
var object={
"name"
{
"name":"Nickhun"
"age":30
}
如果是json的话就是:

{
"name":"Nickhun",
"age":30
}
区别在哪?不是人名,是json首先没有声明变量,因为一开始就说了json不支持变量,其次是json不需要后面的分号,但是必须给属性加双引号。
在js中的对象中经常用到json,因为json可以直接的传给我们全局函数eval()进行运算,而不用创建DOM。
{
"name":"Junho",
"age":28,
"school":{
"name":"shizongda",
"Location":"N.Korea"
}
}
其中的两个name属性分别在两个不同的对象中,这个不懂的看看作用域,闭包啥的吧哈。
第三种:数组:
 json数组就是采用的js的形式,看起来好像也没什么区别,就是注意json中不能包括的点就行:
js数组:var arr=[22,"yc",treu,null];
json数组:[22,"yc",true,null]
还是那两个区别没分号,没变量;
json的结构的最外层形式一般是对象和数组;
[{},{},{}.....]对象数组,数组里面的对象有是想上个例子中的一样,是json的,属性对应的值又可以是json对象,或者是数组。
  这是今天要说的基础部分,恩恩,明天继续,json和zepto,双十一快递太多今天就到这里。




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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值