今晚又下班早!!嘿嘿,继续JOSN的总结吧!!!!有人说这么简单还有必要写吗???我觉得“眼里过十遍不如手里过一遍”!!有错误之处请指正!!共同学习下!!!!废话不说了,进入今晚的正题:

<二>  JSON的格式与语法:

Javascript可以非常容易的创建并访问JSON对象,语法如下:

 var jsonObject=
{
propertyName(属性名):value(值),//对象内的属性语法(属性名与属性值是成对出现的)
functionName(函数名):fucntion(){.......;}//对象内的函数语法(函数名与函数内容是成对出现的)
};

针对上面的语法,在这儿分析下:

1)、   jsonObject:JSON的对象名称

2)、 propertyName:      属性名称

3)、  functionName :    函数名称

4)、 一对大括号,括起多个”名称/值“的集合

JSON使用”名称/值“或者”键/值“ 对的集合表示,也可以被理解为数组,属性名或函数名可以是任意的字符串(但是必须要有意义,有可被识别性),甚至是空字符串。

逗号用于分割每对”名称/值“对,按照最简单的形式,可以用下面的JSON表示:

{”fistName":"Aju"}

这是实例非常基本,而且实际上比等效的纯文本名称/值对( firstName=Aju )占用更多的空间;

但是,当将多个"名称/值“对串在一起时,JSON的价值也就体现出来了,下面就来个包含多个”名称/值“对的记录:

 {”firstName":"zhang","lastName":"Aju","email":"@qq.com"};

从语法上看,这与”名称/值“对相比并没有很大的优势,但是在这种情况下,JSON更容易使用,而且可读性更好,例如:它明确地表示以上三个值都是同一记录的一部

分;花括号使这些值有了某种联系。

当需要表示一组值时,JOSN不但能够提高可读性,而且可以减少复杂性,例如:假如你希望表示一个人名列表,在XML中,需要许多开始标记和结束标记;如果使用

典型的名称/值对,那么必须建立一种专有的数据格式。如果使用JSON,就只需要将多个带花括号的记录分组在一起:

 {
"people":[
{"firstName":"Zhao","lastName":"Liang","email":"1111@qq.com"},
{"firstName":"zhang","lastName":"Liang","email":"2222@qq.com"},
{"firstName":"Li","lastName":"Si","email":"3333@qq.com"}
]}

这应该不难理解,这个实例中,只有一个名为 people 的变量,值是包含三条数组,每个数组是一个人的记录,其中包括名、姓、电子邮件,上面的示例演示了如何用括

号将记录组合成一个值,当然,可以使用相同的语法表示多个值(每个值包含多条记录):

 {
"programmers":[
{"firstName":"zhang","lsatName":"San"},
{"firstName":"Li","lsatName":"Si"}
],
"authors":[
{"firstName":"wang","lsatName":"wu"},
{"firstName":"Lu","lsatName":"liu"}
],
"musicians":[
{"firstName":"qi","lsatName":"qiang"},
{"firstName":"huang","lsatName":"San"}
]
}

这是值得注意的是,能够表示多个值,每个值包含多个值,但是还应该注意,在不同的数组中(“programmenrs”、"authors"、“musicians”)之间,记录中实际的

名称/值对,可以不一样,JSON 是完全动态的(你想怎样写都可以只要符合它的语法规范)

在处理JSON格式的数据时,没有需要遵守预定义的约束,所以,在同样的数据结构中,可以改变表示数据的方式;

今晚就写到这儿,吃饭了,girl friend 都叫了好几遍了,如果明晚下班早,准备写第三篇 :Javascript中处理JSON

JOSN学习总结<二> JSON的格式与语法的更多相关文章

  1. python学习(二):python基本语法

    前言:python基本的语法与其他语言诸如C,JAVA等类似,但个中有些许不同. 一.常规语法 1.变量名与关键字 与其他语言类似,变量名由字母.数字.下划线组成,且必须由字母开头. 变量使用不需要提 ...

  2. Android NDK学习(二):编译脚本语法Android.mk和Application.mk

    一.Android.mk Android.mk分为一下几部分: LOCAL_PATH:= $(call my-dir), 返回当前文件在系统中的路径,Android.mk文件开始时必须定义该变量. i ...

  3. java学习(二)基础概念、语法

    对象 类的实例(通俗点讲,new出来的玩意好像都是对象?初学者的感觉,不造对错啊,有大神给我解释下可以啊) 类 class嘛,模板嘛,可以给对象实例的嘛 方法 行为,学编程的,方法,这玩意心里都懂吧, ...

  4. python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码

    python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码 python的json.dumps方法默认会输出成这种格式"\u535a\u ...

  5. Unity3D学习(二):使用JSON进行对象数据的存储读取

    前言 前段时间完成了自己的小游戏Konster的制作,今天重新又看了下代码.原先对关卡解锁数据的存储时用了Unity自带的PlayerPref(字典式存储数据). 读取关卡数据的代码: void Aw ...

  6. scrapy爬虫学习系列二:scrapy简单爬虫样例学习

    系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备:      http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_00 ...

  7. [转]ASP.NET MVC学习系列(二)-WebAPI请求 传参

    [转]ASP.NET MVC学习系列(二)-WebAPI请求 传参 本文转自:http://www.cnblogs.com/babycool/p/3922738.html ASP.NET MVC学习系 ...

  8. python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码

    python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...

  9. amazeui学习笔记二(进阶开发5)--Web 组件开发规范Rules

    amazeui学习笔记二(进阶开发5)--Web 组件开发规范Rules 一.总结 1.见名知意:见那些class名字知意,见函数名知意,见文件名知意 例如(HISTORY.md Web 组件更新历史 ...

随机推荐

  1. 【Xamarin开发 Android 系列 1】环境部署搭建

    原文:[Xamarin开发 Android 系列 1]环境部署搭建 开篇自然先扯一段,近几年移动互联网如果熊猫零食一样,蔓延迅速.楼主身为一个微软忠实的粉丝,无奈,老爹不给力.Silverlight开 ...

  2. init进程 && 解析Android启动脚本init.rc && 修改它使不启动android && init.rc中启动一个sh文件

    Android启动后,系统执行的第一个进程是一个名称为init 的可执行程序.提供了以下的功能:设备管理.解析启动脚本.执行基本的功能.启动各种服务.代码的路径:system/core/init,编译 ...

  3. 【CF】283D Tennis Game

    枚举t加二分判断当前t是否可行,同时求出s.注意不能说|a[n]| <= |3-a[n]|就证明无解,开始就是wa在这儿了.可以简单想象成每当a[n]赢的时候,两人都打的难解难分(仅多赢一轮): ...

  4. Minimum Cost(最小费用最大流)

    Description Dearboy, a goods victualer, now comes to a big problem, and he needs your help. In his s ...

  5. Python 几个重要的内置函数

    所谓内置函数,就是在Python中被自动加载的函数,任何时候都可以用.内置函数,这意味着我们不必为了使用该函数而导入模块.不必做任何操作,Python 就可识别内置函数.在学习Python的过程中,有 ...

  6. MySQL源码 数据结构hash

    MySQL源码自定义了hash表,因为hash表具有O(1)的查询效率,所以,源码中大量使用了hash结构.下面就来看下hash表的定义: [源代码文件include/hash.h mysys/has ...

  7. Linux下对拍脚本与随机数生成器

    对拍脚本 新建一个文档 check.sh 作为对拍脚本. #!/bin/bash while(true)do #死循环 ./data > .in #运行数据生成器,将数据输出到1.in ./st ...

  8. 【转】Xcode7.1环境下上架iOS App到AppStore 流程 (Part 一)

    原文网址:http://www.cnblogs.com/ChinaKingKong/p/4957682.html 前言部分 之前App要上架遇到些问题到网上搜上架教程发现都是一些老的版本的教程 ,目前 ...

  9. IIS短文件漏洞修复

    近期网站系统被扫描出漏洞:IIS短文件/文件夹漏洞 漏洞级别:中危漏洞 漏洞地址:全网站 漏洞描述:IIS短文件名泄露漏洞,IIS上实现上存在文件枚举漏洞,攻击者可利用此漏洞枚举获取服务器根目录中的文 ...

  10. Selenium WebDriver + Grid2 + RSpec之旅(三) ----入门小例子

    Selenium WebDriver + Grid2 + RSpec之旅(三) ----入门小例子 第一个例子都是比较简单的博客园登录界面,就像学习编程语言时候都是从Hello,World!开始. 1 ...