什么是JSON

JSON:JavaScript Object Notation 【JavaScript 对象表示法】

JSON 是存储和交换文本信息的语法。类似 XML。

JSON采用完全独立于任何程序语言的文本格式,使JSON成为理想的数据交换语言

为什么需要JSON

提到JSON,我们就应该和XML来进行对比。XML也是一种存储和交换文本信息的手段。那么JSON好在哪里呢??

JSON 比 XML 更小、更快,更易解析

  • javaScript原生支持JSON,解析速度会很快
  • XML解析成DOM对象的时候,浏览器【IE和fireFox】会有差异
  • 使用JSON会更简单

更加容易创建JavaScript对象

var p = {'city':['北京','上海','广州','深圳']};
for(var i=0;i<p.city.length;i++){
document.write(p.city[i]+"<br/>");
}

JSON语法

客户端与服务端的交互数据无非就是两种

  • 数组
  • 对象

于是乎,JSON所表示的数据要么就是对象,要么就是数据

JSON语法是javaScript语法的子集,javaScript用[]中括号来表示数组,用{}大括号来表示对象,JSON亦是如此

JSON数组:


var employees = [
{ "firstName":"Bill" , "lastName":"Gates" },
{ "firstName":"George" , "lastName":"Bush" },
{ "firstName":"Thomas" , "lastName": "Carter" }
];

JSON对象


var obj = { age: 20,
str: "zhongfucheng",
method: function () {
alert("我爱学习");
} };

当然啦,数组可以包含对象,在对象中也可以包含数组


解析JSON

javaScript原生支持JSON的,我们可以使用eval()函数来解析JSON,把JSON文本数据转换成一个JavaScript对象。

        function test() {
//在写JOSN的时候,记得把带上逗号
var txt = "{a:123," +
"b:'zhongfucheng'}"; //使用eval解析JSON字符串,需要增添()
var aa = eval("(" + txt + ")");
alert(aa); }

效果

总结

JSON【介绍、语法、解析JSON】的更多相关文章

  1. Json介绍以及解析Json

    首先,介绍一下Json字串,以下Json的介绍引用网上资料. 简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应 ...

  2. JSON.stringify语法解析(自己留存)

    语法: JSON.stringify(value [, replacer] [, space]) value:是必选字段.就是你输入的对象,比如数组,类等. replacer:这个是可选的.它又分为2 ...

  3. 《项目经验》--后台一般处理程序向前台JS文件传递JSON,JS解析JSON,将数据显示在界面--显示在DropDownList 或 显示在动态创建的table中

    http://blog.csdn.net/mazhaojuan/article/details/8599167 先看一下我要实现的功能界面: 这篇文章主要介绍:后台一般处理程序把从数据库查找的数据,转 ...

  4. 使用Newtonsoft.Json.dll(JSON.NET)动态解析JSON、.net 的json的序列化与反序列化(一)

    在开发中,我非常喜欢动态语言和匿名对象带来的方便,JSON.NET具有动态序列化和反序列化任意JSON内容的能力,不必将它映射到具体的强类型对象,它可以处理不确定的类型(集合.字典.动态对象和匿名对象 ...

  5. 大话JSON之Gson解析JSON

    (三)解析Json数组(多条Json数据) 比如有如下Json数据: [{'name':'John', 'grade':[{'course':'English','score':100},{'cour ...

  6. [Xamarin] 調用JSON.net 來解析JSON (转帖)

    上一篇文章我們提到了透過WebClient從Facebook 拿到我的JSON資料 再來我們要怎麼解析JSON格示呢?在.net 中,我們很孰悉的JSON.net,沒錯,我們依然可以在Xamarin中 ...

  7. php生成json和js解析json

    php生成json $value=array("name"=>"dfas");echo json_encode($value); js解析json var ...

  8. Xamarin 调用JSON.net来解析JSON 转(Model) json2csharp.com/

    https://www.cnblogs.com/zjoch/p/4458516.html   再来我们要怎么解析JSON格示呢?在.net 中,我们很孰悉的JSON.net,没错,我们依然可以在Xam ...

  9. Xamarin调用JSON.net来解析JSON

      https://www.cnblogs.com/zjoch/p/4458516.html   再来我们要怎么解析JSON格示呢?在.net 中,我们很孰悉的JSON.net,没错,我们依然可以在X ...

  10. Java中使用org.json和json-lib解析JSON

    文章目录  [隐藏] 一.JavaProject中org.json解析JSON 1.JSON的org.son-api下载 1)JSON网址 2)JSON的java解析org.json-api网址 3) ...

随机推荐

  1. cat命令汇总整理

    Cat命令:一般用作打开文件,查看文件内容(可以一次查看多个文件),参数有如下几个: -a 或 –all,显示全部 -b 或--number-nonblank 对非空输出行编号 -n 或 --numb ...

  2. EntityFunctions

    提供在 LINQ to Entities 查询中的一些static方法 例如: EntityFunctions.CreateDateTime , , ) == created);

  3. java array to list

    背景 想把数组转为list,使用list的判断元素是否存在的方法,结果发现一个坑,int类型的数组失败了 步骤 public static void main(String[] args) { int ...

  4. 【Centos7】卸载OpenJDK

    一般情况下,centos会自带OpenJDK,Hadoop的运行环境要求自己配置JRE,但在home下配置好了JRE后,使用java -version仍然看到OpenJDK,原因是系统根据$PATH路 ...

  5. BotVS开发基础—2.7 指标MACD

    代码 def main(): while true: records = _C(exchange.GetRecords); # 获取K线数据 ,默认为策略界面设置的K线周期, _C 是一个容错的内置函 ...

  6. Tensorflow之MNIST解析

    要说2017年什么技术最火爆,无疑是google领衔的深度学习开源框架Tensorflow.本文简述一下深度学习的入门例子MNIST. 深度学习简单介绍 首先要简单区别几个概念:人工智能,机器学习,深 ...

  7. 部分iphone手机上的div的点击事件无效

    最近在做一个手机移动端的项目,Andrio手机和部分iphone手机上点击事件都是好的,只有在老的型号上的iphone手机上点击事件无效果. 后来在网上查了很多资料,发现有加样式cursor:poin ...

  8. java程序启动参数-D含义详解

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt407 java程序启动参数 -D是用来做什么的呢?去查询了一下官方解释: S ...

  9. 查看numpy.ndarray的数据类型

    使用ndarray数据时,如果希望知道数据的类型和维数,可以按照以下方法: Xxx.dtype  #xxx表示一个ndarray类型的变量,返回ndarray的数据类型 Xxx.shape  #xxx ...

  10. 数据结构学习:KMP模式匹配算法

    有关KMP的算法具体的实现网上有很多,不具体阐述.这里附上c的实现. 谈谈我自己的理解.KMP相较于朴素算法,其主要目的是为了使主串中的遍历参数i不回溯,而直接改变目标串中的遍历参数j. 比如说要是目 ...