在JSON中,有两种结构:对象和数组。
    1. 一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不需要。例如:
    var o={"name":"drh","number":123456,"score":12,"time":"2012-02-20"};   
    2. 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。
    例如:
    var list=[{"name":"drh","number":123456,"score":12,"time":"2012-02-20"},{"name":"drh2,"number":12345678,"score":55,"time":"2012-02-21"}];
    Object是以{}表示,Array是以[  ]表示;

JSON提供了json.js包,下载地址:http://www.json.org/

在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如:
       JSON字符串:
       var str1 = '{ "name": "drh", "sex": "man" }';
       JSON对象:
       var str2 = { "name": "drh", "sex": "man" };

一、JSON字符串转换为JSON对象
要使用上面的str1,必须使用下面的方法先转化为JSON对象:
//由JSON字符串转换为JSON对象
var obj = eval('(' + str + ')');
或者
var obj = str.parseJSON(); //由JSON字符串转换为JSON对象
或者
var obj = JSON.parse(str); //由JSON字符串转换为JSON对象
然后,就可以这样读取:
Alert(obj.name);
Alert(obj.sex);

注意:如果obj本来就是一个JSON对象,那么使用eval()函数转换后(哪怕是多次转换)还是JSON对象,但是使用parseJSON()函数处理后会有问题(抛出语法异常)
二、可以使用toJSONString()或者全局方法JSON.stringify()将JSON对象转化为JSON字符串。
    例如:
        var last=obj.toJSONString(); //将JSON对象转化为JSON字符
    或者
        var last=JSON.stringify(obj); //将JSON对象转化为JSON字符
         alert(last);
注意:
    上面的几个方法中,除了eval()函数是js自带的之外,其他的几个方法都来自json.js包。新版本的 JSON 修改了 API,将 JSON.stringify() 和 JSON.parse() 两个方法都注入到了 Javascript 的内建对象里面,前者变成了 Object.toJSONString(),而后者变成了 String.parseJSON()。如果提示找不到toJSONString()和parseJSON()方法,则说明json包版本太低。
另外,json.js是不稳定的,容易和其他js库相冲突,所以如果不使用toJSONString()和parseJSON()方法,最好使用json2.js 。

转载于:https://blog.51cto.com/alandeng/804708

javascript使用Json总结相关推荐

  1. html5展示json数据库,显示数据在html5从数据库使用javascript和json

    我想从MySQL数据库显示在html中的列表.要从MySQL获取数据我使用json和javascript.但它什么也没有显示!显示数据在html5从数据库使用javascript和json 我的HTM ...

  2. JavaScript对Json的增删改属性

    <script type="text/javascript">var json = {"age":24,"name":" ...

  3. JavaScript解析Json字符串

    JavaScript可以解析服务器接口返回的json字符串(一般用于Ajax),而不需要json的额外支持. 在JavaScript中可以通过eval()方法将一个json字符串解析成一个JavaSc ...

  4. php用json交换二维数组,PHP和Javascript的JSON交互(处理一个二维数组)

    我不得不承认:我是一个彻彻底底的JS白痴.但根据项目需要,不得不使用JSON,不管怎么说,经过一个晚上的学习,已经略有所成,记录下来. PHP的JSON类库我使用的是Services_JSON,没什么 ...

  5. JSON数据格式----- JavaScript与JSON、JavaScript的JSON对象、构建JSON格式数据

    JavaScript与JSON JSON是一种语法,用来序列化对象.数组等的.它只是基于JavaScript语法 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zWMc ...

  6. php使用 js格式解析,JavaScript解析JSON格式数据的方法示例

    本文实例讲述了JavaScript解析JSON格式数据的方法.分享给大家供大家参考,具体如下: 1.使用JavaScript提供的eval()函数function JsonText1() { var ...

  7. 对JavaScript解析JSON格式数据的理解

    对JavaScript解析JSON格式数据的理解 一.JSON与JavaScript对象的关系 1,JSON的由来: 在21世纪初,Douglas Crockford(Web开发领域最知名的技术权威之 ...

  8. JavaScript对JSON数组操作。数组添加(push)以及移除(splitce)

    这里写一个小栗子提供给大家学习和纪录.  js声明数组 以及向数组中添加as移除json数据 JavaScript声明JSON数组的方法: //部分条件,在数据渲上数据要求是数组格式而非json数组格 ...

  9. JavaScript解析json格式数据简单示例

    JavaScript解析json格式数据简单示例 本文通过for循环来获取json结点数据,需要的朋友可以参考以下这串json数据用来存储预加载的图片路径: 代码如下: var imgData = [ ...

  10. JavaScript 解析json例子

    JavaScript 解析json例子.包含了字符串转Json对象.对未知key的键值对的遍历. json在线解析工具:http://www.jsonin.com/ JS代码如下: <span ...

最新文章

  1. linux中的NFS服务器配置及/etc/exports
  2. 2015 深度学习文章整理
  3. Python的map、filter、reduce函数
  4. ubuntu14安装python_ubuntu14.04 安装python3.7
  5. 使用IDEA+MVN 编译Spark 1.5.2 without hive
  6. 老白聊数据-关于销售预测的那些事
  7. Spring 通知和顾问进行增强
  8. JAVA中两个数组比较可以使用Arrays.equals()
  9. Shapefile文件格式介绍
  10. 软件编程推荐书籍 大全
  11. 主流移动开发平台架构分析
  12. 今天小暑是什么时间_2020年小暑具体时间是几点几分?小暑是什么意思?
  13. 弱监督检测初识——Weakly Supervised Deep Detection Networks解读
  14. java ews appointment_ews-java-api学习:新建Recurring Appointment
  15. Hive SQL 每日SQL
  16. Unity两点距离计算
  17. 英文版Windows XP的中文支持设置
  18. 【基础算法训练】—— 字符串
  19. [HTML5] Video 标签播放及控制视频
  20. x1c2017 8G版 win linux的取舍纠结记录

热门文章

  1. asp.net C#压缩打包文件例子
  2. JavaScript 之 call和apply,bind 的模拟实现
  3. 微服务架构的基础框架选择:Spring Cloud还是Dubbo?
  4. 继承、实现、依赖、关联、聚合、组合的联系与区别
  5. 如何在多Node版本的情况下公用一个npm
  6. 关于版本控制工具GitHub安装报错
  7. 更改innodb_page_size状态值
  8. 攻下《JavaScript高级程序设计》——第二章 在HTML中使用JavaScript
  9. 【转载】3389远程终端常用CMD命令
  10. [hdu6434]Problem I. Count