JS操作JSON方法总结(推荐)


Posted in Javascript onJune 14, 2016

JSON概述:

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不需要任何特殊的 API 或工具包。

JSON:JavaScript 对象表示法(JavaScript Object Notation)。

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

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

JSON 语法规则

JSON 语法是 JavaScript 对象表示法语法的子集。

数据在名称/值对中

数据由逗号分隔

花括号保存对象

方括号保存数组

好了,以上所述不是本文的重点,本文主要是对JS操作JSON的方法做下总

在JSON中,有两种结构:对象和数组。

1. 一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值' 对”之间使用“,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不需要。例如:

var o={"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"};

2. 数组是值(value)的有序集合。一个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。

例如:

var jsonranklist=[{"xlid":"cxh","xldigitid":123456,"topscore":2000,"topplaytime":"2009-08-20"},{"xlid":"zd","xldigitid":123456,"topscore":1500,"topplaytime":"2009-11-20"}];

为了方便地处理JSON数据,JSON提供了json.js包,下载地址:http://www.json.org/json.js

在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如:

JSON字符串:

var str1 = '{ "name": "cxh", "sex": "man" }';

JSON对象:

var str2 = { "name": "cxh", "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包版本太低。

以上所述是小编给大家介绍的JS操作JSON方法总结(推荐)的全部叙述,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
浅谈js控制li标签排序问题 js调用php函数的方法
Oct 16 Javascript
微信开发 JS-SDK 6.0.2 经常遇到问题总结
Dec 08 Javascript
React根据宽度自适应高度的示例代码
Oct 11 Javascript
vue-cli中打包图片路径错误的解决方法
Oct 26 Javascript
微信小程序自定义tabBar组件开发详解
Sep 24 Javascript
微信小程序实现slideUp、slideDown滑动效果及点击空白隐藏功能示例
Dec 11 Javascript
vue-router命名视图的使用讲解
Jan 19 Javascript
jQuery zTree树插件的使用教程
Aug 16 jQuery
jquery分页优化操作实例分析
Aug 23 jQuery
浅谈Vue.set实际上是什么
Oct 17 Javascript
vue 微信分享回调iOS和安卓回调出现错误的解决
Sep 07 Javascript
微信小程序实现首页弹出广告
Dec 03 Javascript
JavaScript Promise 用法
Jun 14 #Javascript
Javascript基础_简单比较undefined和null 值
Jun 14 #Javascript
Javascript缓存API
Jun 14 #Javascript
JS修改地址栏参数实例代码
Jun 14 #Javascript
JS获取地址栏参数的两种方法(简单实用)
Jun 14 #Javascript
Javascript基础_嵌入图像的简单实现
Jun 14 #Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
Jun 14 #Javascript
You might like
PHP 采集程序 常用函数
2008/12/18 PHP
通过具体程序来理解PHP里面的抽象类
2010/01/28 PHP
PHPExcel内存泄漏问题解决方法
2015/01/23 PHP
laravel安装zend opcache加速器教程
2015/03/02 PHP
greybox——不开新窗口看新的网页
2007/02/20 Javascript
JS打开图片另存为对话框实现代码
2012/12/26 Javascript
javascript alert乱码的解决方法
2013/11/05 Javascript
jtable列中自定义button示例代码
2013/11/21 Javascript
js购物车实现思路及代码(个人感觉不错)
2013/12/23 Javascript
JavaScript中对象property的删除方法介绍
2014/12/30 Javascript
Jquery中find与each方法用法实例
2015/02/04 Javascript
jQuery获取浏览器类型和版本号的方法
2016/07/05 Javascript
jquery 实现回车登录详解及实例代码
2016/10/23 Javascript
AngularJS 在同一个界面启动多个ng-app应用模块详解
2016/12/20 Javascript
JS简单获取并修改input文本框内容的方法示例
2018/04/08 Javascript
微信JS-SDK updateAppMessageShareData安卓不能自定义分享详解
2019/03/29 Javascript
微信小程序分享功能onShareAppMessage(options)用法分析
2019/04/24 Javascript
使用vuex较为优雅的实现一个购物车功能的示例代码
2019/12/09 Javascript
Javascript执行流程细节原理解析
2020/05/14 Javascript
vue+canvas实现拼图小游戏
2020/09/18 Javascript
Python中的进程分支fork和exec详解
2015/04/11 Python
python 两个数据库postgresql对比
2019/10/21 Python
TensorFlow——Checkpoint为模型添加检查点的实例
2020/01/21 Python
Python如何把多个PDF文件合并代码实例
2020/02/13 Python
python如何更新包
2020/06/11 Python
Python 随机按键模拟2小时
2020/12/30 Python
html5 canvas里绘制椭圆并保持线条粗细均匀的技巧
2013/03/25 HTML / CSS
详解HTML5如何使用可选样式表为网站或应用添加黑暗模式
2020/04/07 HTML / CSS
高校生生产实习自我鉴定
2013/09/21 职场文书
行政专员工作职责
2013/12/22 职场文书
中专生自我鉴定范文
2014/02/02 职场文书
担保书怎么写
2014/04/01 职场文书
学生自我评语大全
2014/04/18 职场文书
关于安全的演讲稿
2014/05/09 职场文书
文明社区申报材料
2014/08/21 职场文书
2016党员干部反腐倡廉心得体会
2016/01/13 职场文书