json简单介绍

JSON简单介绍:

所谓的JSON是JavaScript Object Notation的缩写,意思是javascript对象表示法。

下面对JSON做一下总结:

(1).JSON指的是javascript对象表示法,是JavaScript Object Notation的缩写。
(2).JSON是轻量级的文本数据交换格式。
(3).JSON是独立于平台和语言的。
(4).JSON是具有自我描述性,非常易于理解。

特别说明:JSON是一种用来规范字符串数据格式的语法。
代码实例:

实例一:

{"webName":"我们","url":"jb51.net","age":"10"}

上面的是一个简单的json格式的内容。
特别说明:必须在字符串上下文中,才能称之为json内容。
实例二:

var strJSON='{"webName":"我们","url":"jb51.net","age":"10"}';
var jsonObj=eval("("+strJSON+")");
console.log(jsonObj.webName);

上面的代码中,使用eval()函数将json内容转换为对象直接量。

介绍
我们知道AJAX技术能够使得每一次请求更加迅捷,对于每一次请求返回的不是整个页面,也仅仅是所需要返回的数据。通常AJAX通过返回XML格式的数据,然后再通过客户端复杂的JavaScript脚本解析和渲染这些XML格式的数据。
JSON(读Jason)是为了能够使得数据格式成为一种标准,更简单的被JavaScript解析。

优点
1、轻量级的数据交换格式
2、人们读写更加容易
3、易于机器的解析和生成
4、能够通过JavaScript中eval()函数解析JSON
5、JSON支持多语言。包括:ActionScript, C, C#, ColdFusion, E, Java, JavaScript, ML, Objective CAML, Perl, PHP, Python, Rebol, Ruby, and Lua.

语法
JSON语法是一种用于传输和生成数据的协定,很类似于C家族的语言,所以很容易被C家族的语言所解析。
对象:对象包含在{}之间
属性:采用Key-Value对来表示。属性之间使用逗号分开。  string : value 
数组:数组存放在[]之间   [ elements ] 
元素:元素之间用逗号分开
值:值可以是字符串,数字,对象,数组,true,false,null
例子:

JSON 
[
{
 name:"Michael",
 email:"17bity@gmail.com",
 homepage:"http://www.jialing.net"
},
{
 name:"John",
 email:"john@gmail.com",
 homepage:"http://www.jobn.com"
},
{
 name:"Peggy",
 email:"peggy@gmail.com",
 homepage:"http://www.peggy.com"
}
]

事实上google maps就没有采用XML传递数据,而是采用了JSON方案。

JSON的另外一个优势是"跨域性",例如你在网页里使用 
<script type="text/javascript" src="http://www.yyy.com/some.js">

是完全可行的,这就意味着你可以跨域传递信息。而使用XMLHttpRequest却获取不了跨域的信息,这是Javascript内部的安全性质所限制的。

JSON能完全取代XML吗?当然不能,原因就在于XML的优势:通用性。要使服务器端产生语法合格的Javascript代码并不是很容易做到的,这主要发生在比较庞大的系统,服务器端和客户端有不同的开发人员。

(0)

相关推荐

  • json简单介绍

    JSON简单介绍: 所谓的JSON是JavaScript Object Notation的缩写,意思是javascript对象表示法. 下面对JSON做一下总结: (1).JSON指的是javascript对象表示法,是JavaScript Object Notation的缩写. (2).JSON是轻量级的文本数据交换格式. (3).JSON是独立于平台和语言的. (4).JSON是具有自我描述性,非常易于理解. 特别说明:JSON是一种用来规范字符串数据格式的语法. 代码实例: 实例一: {"

  • Eclipse代码格式化设置简单介绍

    自用项目中统一Eclipse格式化Java.JavaScript.JSP.HTML代码设置 1.Window->Preferences //Java 格式化 2.Java->Code Style->Formatter->New->Edit->Line Wrapping 3.Maximum Line width = 180 4.Set line width for preview window = 180 //JavaScript 格式化 5.JavaScript->

  • BootstrapTable refresh 方法使用实例简单介绍

    本文就bootstrapTable refresh 方法如何传递参数做简单举例说明.下面代码中,一个table,一个button,单击button会触发刷新表格操作. <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <link rel="stylesheet" href="../libs/bootstrap

  • 简单介绍Python中的几种数据类型

    大体上把Python中的数据类型分为如下几类: Number(数字) 包括int,long,float,complex String(字符串) 例如:hello,"hello",hello List(列表) 例如:[1,2,3],[1,2,3,[1,2,3],4] Dictionary(字典) 例如:{1:"nihao",2:"hello"} Tuple(元组) 例如:(1,2,3,abc) Bool(布尔) 包括True.False 由于Pyt

  • jQuery中 bind的用法简单介绍

    bind介绍 bind() 方法为被选元素添加一个或多个事件处理程序,并规定事件发生时运行的函数. 语法 $(selector).bind(event,data,function) event 必须.添加到元素的一个或多个事件如:click,mouseover,mouseup,change,select data 可不填.传递到函数的额外数据,如:$(selector).bind("click","input",function(){}); function(){}

  • protobuf简单介绍和ubuntu 16.04环境下安装教程

    protobuf简单介绍 protobuf是谷歌的开源序列化协议框架,结构类似于XML,JSON这种,显著的特点是二进制的,效率高,主要用于通信协议和数据存储等方面,算是一种结构化数据的表示方法. protobuf的优点 大家都在用,起码'装逼'的都在用[咱要跟上时代] 别人说性能好,二进制格式[大项目不用这个,感觉丢人] 跨平台支持各种语言,前后兼容好强大[毕竟人家谷歌在用了] protobuf的缺点 二进制格式,一般人看不了 缺乏自我描述 xml是自我描述的,但是protobuf格式不是的,

  • Python爬虫之Spider类用法简单介绍

    一.网络爬虫 网络爬虫又被称为网络蜘蛛(

  • 简单介绍Python的第三方库yaml

    目录 一.yaml基本介绍 二.适用场景 三.基本的语法规则 四.YAML支持的三种数据结构 4.1 对象 4.2 数组 4.2.1 对象和数组 4.3 纯量 4.4 还有一些特殊符号 4.4.1 - YAML可在同一个文件中,使用-表示一个文档的开始 4.4.2 -和-配合使用,在一个配置文件中代表一个的结束 4.4.3 YAML中使用!!做类型强行转换 4.4.4 > 在字符串中表示折叠换行:| 保留换行.这两个符号是YAML中字符串经常使用的符号 4.4.5 引用.重复的内容在YAML中可

  • jsonp的简单介绍以及其安全风险

    目录 JSONP介绍 JSONP劫持 利用JSONP绕过token防护进行csrf攻击 JSONP劫持挖掘与防御 参考 总结 JSONP介绍 说起跨域请求资源的方法,最常见的方法是JSONP/CORS.下面以具体的例子介绍一下JSONP的工作原理. JSONP全称是JSON with Padding ,是基于JSON格式的为解决跨域请求资源而产生的解决方案.他实现的基本原理是利用了HTML里script元素标签没有跨域限制 JSONP原理就是动态插入带有跨域url的script标签,然后调用回调

  • Atom-IDE 的使用方法简单介绍

    Atom-IDE 的使用方法简单介绍 今日,GitHub 宣布与 Facebook 合作推出了 Atom-IDE -- 它包括一系列将类 IDE 功能带到 Atom 的可选工具包. 初次发布的版本包括更智能.感知上下文的自动完成:导航功能,如大纲视图和 goto-definition,以及其他有用的功能:还包括错误.警告提醒和格式化文档功能. 查看 Atom 博客以了解更多. Atom-IDE 包括适用于 C#, Flow, Java, JavaScript, PHP, 和 TypeScript

随机推荐