看了就知道什么是JSON

什么是JSON 
JSON(Javascript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于Javascript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, Javascript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。 
JSON概念很简单,就是服务器直接生成Javascript语句,客户端获取后直接用eval方法来获得这个对象,这样就可以省去解析XML的性损失。

使用XML表示:   


代码如下:

<items>   
    <item>   
        <id>1</id>   
        <author>Jackson</author>   
        <url>http://www.jb51.net</url>   
        <content>Welcome to Web.cn</content>   
    </item>   
    <item>   
        <id>2</id>   
        <author>Relkn</author>   
        <url>http://www.jb51.net</url>   
        <content>Web.cn关注互联网新技术</content>   
    </item>   
    <item>   
        <id>3</id>   
        <author>Kvogend</author>   
        <url>http://www.jb51.net</url>   
    <content>jb51.net我们</content>   
    </item>   
</items>

代码:


代码如下:

<items> 
    <item> 
        <id>1</id> 
        <author>Jackson</author> 
        <url>http://www.jb51.net</url> 
        <content>Welcome to Web.cn</content> 
    </item> 
    <item> 
        <id>2</id> 
        <author>Relkn</author> 
        <url>http://www.jb51.net</url> 
        <content>Web.cn关注互联网新技术</content> 
    </item> 
    <item> 
        <id>3</id> 
        <author>Kvogend</author> 
        <url>http://www.jb51.net</url> 
    <content>jb51.net我们</content> 
    </item> 
</items>

使用JSON:   


代码如下:

{items:[    
{    
id:1,    
author:\"Jackson\",   
url:\"http://www.jb51.net\",   
content:\"Welcome to Web.cn\"   
},   
{   
id:2,   
author:\"Relkn\",   
url:\"http://www.jb51.net\",   
content:\"Web.cn关注互联网新技术\"   
},   
{   
id:3,   
author:\"Kvogend\",   
url:\"http://www.jb51.net\",   
content:\"jb51.net我们\"   
}    
]};

代码:  


代码如下:

{items:[ 

id:1, 
author:\"Jackson\", 
url:\"http://www.jb51.net\", 
content:\"Welcome to Web.cn\" 
}, 

id:2, 
author:\"Relkn\", 
url:\"http://www.jb51.net\", 
content:\"Web.cn关注互联网新技术\" 
}, 

id:3, 
author:\"Kvogend\", 
url:\"http://www.jb51.net\", 
content:\"jb51.net我们\" 

]};

JSON不仅减少了解析XML解析带来的性能问题和兼容性问题,而且对于Javascript来说非常容易使用,可以方便的通过遍历数组以及访问对象属性来获取数据,其可读性也不错,基本具备了结构化数据的性质。不得不说是一个很好的办法,而且事实上google maps就没有采用XML传递数据,而是采用了JSON方案。

JSON的另外一个优势是"跨域性",例如你在www.jb51.net的网页里使用

<script type="text/javascript" src="" target="_blank">http://www.yyy.com/some.js">

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

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

(0)

相关推荐

  • 看了就知道什么是JSON

    什么是JSON  JSON(Javascript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写.同时也易于机器解析和生成.它基于Javascript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集.JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, Javascript, Perl, Python等).这

  • vbs 解析json jsonp的方法

    我收集了三种常见 json jsonp 的格式,因为很多人找我说如何用正则提取某个字符串,我看了下,要么是json,要么是jsonp, 正则简直浪费,比如那种空间里说说的数据,上百条的信息,你正则个P,而且还有回复里的格式也差不多的,所以最好的方法还是解析. 先来看看常见的三种吧: 酷我音乐用户信息 json 格式 http://kzone.kuwo.cn/mlog/UserVal?uid=1237357&from=profile {"work":4,"fans&qu

  • Json返回时间的格式中出现乱码问题的两种解决方案

    前言:这段时间一直没有写博客,首先是我正在实现权限系列的绝色和操作的实现,因为这些东西在前面我们都已经说过了,所以我们就不重复的说这些了,那么我们知道,在我们使用Json返回数据的时候时间的格式一般都会变了,变成我们不认识的一些字符,那么当我们遇到这些问题的时候我们该怎么解决呢,今天我就来小说一下这个的解决方法. .发现问题 (1).正如我们在前言里面所说,我们在编写Json解析时间的时候会返回一些莫名其妙的东西,那么我们是如何解决这个问题的呢?我现在有两种方法可以解决这个问题,下面我们首先来说

  • PHP JSON格式数据交互实例代码详解

    在PHP中解析JSON主要用到json_encode和json_decode两个PHP JSON函数,比PHP解析XML方便很多,下面详细介绍下PHP JSON的使用.JSON基础介绍 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. JSON主要有两种结构: "名称/值"对的集合,在PHP中可以理解为关联数组 (associative array). 值的有序列表(An ordered list of values).在PHP中可以理解为

  • SSH框架网上商城项目第7战之整合Struts2和Json

    上篇我们完成了DataGrid显示json数据,但是没有和后台联系在一起,只是单纯地显示了我们自己弄的json数据,这一节我们将json和Struts2整合,打通EasyUI和Struts2之间的交互. 1. json环境的搭建 json环境搭建很简单,导入json的jar包即可,如下: (注:json-lib-2.4的jar包下载地址:http://xiazai.jb51.net/201605/yuanma/json-lib-2.4(jb51.net).rar ) 2. 完善Action 在D

  • nginx配置返回文本或json的方法

    有些时候请求某些接口的时候需要返回指定的文本字符串或者json字符串,如果逻辑非常简单或者干脆是固定的字符串,那么可以使用nginx快速实现,这样就不用编写程序响应请求了,可以减少服务器资源占用并且响应性能非常快 先看返回固定的文本和json,都是在server中配置location拦截即可,配置示例如下: 固定文本: location ~ ^/get_text { default_type text/html; return 200 'This is text!'; } 固定json: loc

  • ajax中设置contentType: "application/json"的作用

    最近在做项目交互的时候,刚开始向后台传递数据返回 415 ,后来百度添加了 contentType:"application/json" 之后返回400,然后把传输的数据格式改为json字符串就传输成功了,现在我们来看看 contentType:"application/json"的作用: 添加 contentType:"application/json"之后,向后台发送数据的格式必须为json字符串 $.ajax({ type: "p

  • 详解Go语言RESTful JSON API创建

    RESTful API在Web项目开发中广泛使用,本文针对Go语言如何一步步实现RESTful JSON API进行讲解, 另外也会涉及到RESTful设计方面的话题. 也许我们之前有使用过各种各样的API, 当我们遇到设计很糟糕的API的时候,简直感觉崩溃至极.希望通过本文之后,能对设计良好的RESTful API有一个初步认识. JSON API是什么? JSON之前,很多网站都通过XML进行数据交换.如果在使用过XML之后,再接触JSON, 毫无疑问,你会觉得世界多么美好.这里不深入JSO

  • python:解析requests返回的response(json格式)说明

    我就废话不多说了,大家还是直接看代码吧! import requests, json r = requests.get('http://192.168.207.160:9000/api/qualitygates/project_status?projectId=%s' % (p_uuid) ) state=json.loads(r.text).get('projectStatus').get('status') 返回如下: { "projectStatus": { "stat

  • Redis缓存,泛型集合与json字符串的相互转换实例

    难点是泛型如何转换 一.arrayList<Map<String, Object>>转化json字符串,存入redis缓存 ArrayList<Map<String, Object>> listProfit //将ArrayList<Map<String, Object>>类型数据转换成json字符串 String listProfitPctJsonStr = JSON.toJSONString(listProfit); //然后将j

随机推荐