json是JavaScript Object Notation的简写,它是一种轻量级的数据交换格式,而且表达上很容易靠字面去理解。json是用于存储和传输数据的格式,通常用于向服务器端传递数据。

*************JSON**************

1.我们上一节介绍了对象,这一节我们将介绍json,json既然是一种数据的传输方式,那么它也必然会有自己的语法规则,它的语法规则如下:由大括号保存对象,由方括号保存数组,数据以键值对的方式存储,而且多个数据之间需要用逗号分开。

2.比如下面就是一个很经典的json格式:

{"team":[
{"name":"辛星","age":23},
{"name":"小倩","age":20},
{"name":"小楠","age":20}
]}

3.从语法规则上来看,team这个键对应的值是一个数组,而数组分为三个对象,第一个对象的第一个属性是name,值是辛星,第二个属性是age,值是23,其他对象也同理。

*************显示json数据*************

1.既然我们已经知道了json数据的结构,那么我们就开始解析json把,我们可以使用Javascript自带的JSON.parse的方式去解析它,解析完毕之后,它就可以像正常的对象和数组那样使用了,非常的简单。

2.比如我们看如下代码:

var msg = '{"team":[{"name":"辛星","age":23},{"name":"小倩","age":20},{"name":"小楠","age":20}]}';
var obj = JSON.parse(msg);
alert(obj.team[1].name +obj.team[1].age);

3.然后我们导入该css文件,就会发现它弹出一个窗口,显示内容为小倩20。

4.这里需要注意一点的就是这个字符串msg中间不能有空格或者换行符,否则容易导致解析不正确。

5.因此,我更推荐如下的书写形式:

var msg = '{"team":['+
'{"name":"辛星","age":23},'+
'{"name":"小倩","age":20},'+
'{"name":"小楠","age":20}'+
']}';
var obj = JSON.parse(msg);
alert(obj.team[1].name +obj.team[1].age);

************关于JSON的解析**************

1.其实不用我说,我想大家也都明白,既然json只是一种数据格式,那肯定是跨语言的。

2.而且Javascript的很多框架也是支持json的解析的,这一点还是蛮好的。

2014年辛星完全解读Javascript第八节 json的更多相关文章

  1. 2014年辛星完全解读Javascript第一节

    ***************概述*************** 1.Javascript是一种原型化继承的基于对象的动态类型的脚本语言,它区分大小写,主要运行在客户端,用户即使响应用户的操作并进行数 ...

  2. 2014年辛星完全解读Javascript第七节 数组和对象

    由于Javascript是脚本语言,因此,使用起来非常方便,数组的使用也是比较简单的,下面我们就主要介绍一下Javascript中数组的介绍,以及上一节中没有完成的对象的介绍. *********** ...

  3. 2014年辛星完全解读Javascript第六节 对象

    随着面向对象的普及,现在很多语言都在支持面向对象,Javascript也不例外,所谓对象,就是拥有属性和方法的数据.这里的属性其实就是变量,这里的方法,其实就是函数.但是Javascript的面向对象 ...

  4. 2014年辛星完全解读Javascript第五节 break和continue与错误处理

    先说一下break和continue的主要用法吧,break用于跳出循环,continue用于跳过该循环中的一个迭代.简单的说,就是break直接从该语句跳出,但是continue不会跳出该循环语句, ...

  5. 2014年辛星完全解读Javascript第四节 流程控制语句

    上一节我们介绍了函数,本小节我们介绍一下流程控制语句,对于任何一门编程语言来说,流程控制都是非常重要的,也就是我们常说的顺序结构.选择结构和循环结构. ************选择结构******** ...

  6. 2014年辛星完全解读Javascript第三节

    经过第一节的入门和第二节的运算符,那么接下来我们就可以学习Javascript的函数了,当然了,不管大家之前学习的是什么编程语言,都会有函数的概念,如果大家学的是Pascal,还会有”过程“的概念,但 ...

  7. 2014年辛星完全解读Javascript第二节

    本小节我们讲解一下Javascript的语法,虽然js语言非常简单,它的语法也相对好学一些,但是不学总之还是不会的,因此,我们来一探究竟把. ********注释************* 1.我们通 ...

  8. 2014年辛星全然解读html第八节

    经过前面七节的学习,我感觉大家的HTML的功底也差点儿相同了,并且我特别的删去了某些东西,比方框架,假设回到几年前,那么框架是很流行的,可是如今都到了2014年了,这些东西早就该被遗忘了,因此,我果断 ...

  9. 2014年辛星jquery解读第三节 Ajax

    ***************Ajax********************* 1.Ajax是Asynchronous Javascript And  XML的简写,它指的是异步Javascript ...

随机推荐

  1. [转]WIN7服务一些优化方法

    本文转自:http://bbs.cfanclub.net/thread-391985-1-1.html Win7的服务,手动的一般不用管他,有些自动启动的,但对于有些用户来说是完全没用的,可以考虑禁用 ...

  2. Windows Embedded CE 6.0开发环境的搭建

    最近开始在学习嵌入式,在这里首先得安装Windows Embedded CE 6.0,其中遇到了很多问题,电脑的系统以及相关配置都会在安装过程中受到影响,因此笔者就安装中的问题以及环境搭建来介绍一下. ...

  3. hdu 3401 单调队列优化动态规划

    思路: 动态方程很容易想到dp[i][j]=max(dp[i][j],dp[i-w-1][j-k]-k*ap[i],dp[i-w-1][j+k]+k*bp[i]): dp[i][j]表示第i天拥有j个 ...

  4. MVC清除缓存设置+数据验证

    [OutputCache(Location = OutputCacheLocation.None, NoStore = true)] [Table("User")]:定义UserD ...

  5. 基本STRUTS标签-学习笔记-Logic标签

    BEAN标签(name 是从别处得来的:id是自己的,相当于变量:property相当于变量的值) 前提: String str=request.getParameter("param&qu ...

  6. Lombok(1.14.8) - @Synchronized

    @Synchronized @Synchronized,实现同步. package com.huey.lombok; import java.util.Date; import lombok.Sync ...

  7. 使用iTextSharp来填充PDF模板文件

    需求简介:     遇到了这样一个需求:某公司需要为所有用户的培训生成一个培训记录,过程如下:     (1)用户在培训完之后会进入到一个填写信息的界面.     (2)用户填写信息.     (3) ...

  8. sql新手全套

    --[数据库]gocreate database DB_MGG  --添加数据库on(name=DB_MGG --逻辑名称,filename='C:\MDB\DB_MGG.mdf' --物理名称  逻 ...

  9. 译:Spring框架参考文档之IoC容器(未完成)

    6. IoC容器 6.1 Spring IoC容器和bean介绍 这一章节介绍了Spring框架的控制反转(IoC)实现的原理.IoC也被称作依赖注入(DI).It is a process wher ...

  10. oracle instantclient basic +pl/sql 安装和配置

    oracle instantclient basic +pl/sql 安装和配置 大家都知道,用PL/SQL连接Oracle,是需要安装Oracle客户端软件的,oracle客户端有点大,比较耗资源. ...