JS操作JSON总结
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不须要任何特殊的 API 或工具包。
在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
3.复杂格式:数组格式和对象格式的结合。
例如:
var str3 = [{ "name": "cxh", "sex": "man" },{ "name": "zzl", "sex": "woman" },{ "name": "bobo", "sex": "woman" }];
数组中嵌套多个对象。
在数据传输流程中,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();
或者
var obj = JSON.parse(str);
然后,就可以这样读取:
Alert(obj.name);
Alert(obj.sex);
通过遍历获取json串中的key值:
for (var key in str2) {
console.log(key)
}
特别留心:
如果obj本来就是一个JSON对象,那么运用 eval()函数转换后(哪怕是多次转换)还是JSON对象,但是运用 parseJSON()函数处理后会有疑问(抛出语法异常)。
二、将JSON对象转化为JSON字符串。
可以运用 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包版本太低。
转载于:https://www.cnblogs.com/tongxuping/p/7204679.html
JS操作JSON总结相关推荐
- JSON基础 JS操作JSON总结
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意 ...
- JS操作JSON数据交换
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 采用完全独立于语言的文本格式,易于人阅读和编写.同时也易于机器解析和生成. JSON采用完全独立于语言的 ...
- js操作json数据的一些感受
最近在搞 json 数据传输,直接用的 javascript 对数据进行操作.json数据为: var json ={ "global":"200", &quo ...
- Node.js操作Json格式文件
json格式文件也是很常用的数据存储传输格式.本篇将介绍Node.js如何添加.修改和解析Json格式数据. /*** Json文件操作:添加.修改.删除以及读取*/ const fs = requi ...
- js 操作json对象增删改
//将表单序列化成字符串$.fn.serializeObject = function () {var obj = {};var count = 0;$.each(this.serializeArra ...
- js操作json方法总结
相对于前端的老铁来说JSon并不陌生,JSON JavaScript Object Notation 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是一种理想的数据交换格式. json可以 ...
- js之操作JSON数据
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意 ...
- JS对JSON的操作总结
对于前端完全是菜鸟,迫于无奈,工作中要用到JS,尤其对JSON的处理为多,网上搜了一下,所讲的基本雷同.所以把平时用的比较多的JSON处理方法总结了一下,权当加深记忆. 一.概述 JSON(JavaS ...
- [转]JS对JSON的操作总结
本文转自:http://www.cnblogs.com/csj222/archive/2013/04/11/3013667.html 对于前端完全是菜鸟,迫于无奈,工作中要用到JS,尤其对JSON的处 ...
最新文章
- LaTeX中警告类型及说明
- nginx配置设置,使部分页面访问跳转到404页面
- 如何取消 登录_LSAT | 退考、缺考、取消成绩,各自的区别和流程是怎样的?
- 字段与属性 c# 1613532992
- 持有对象---Arrays.asList()和Collections.addAll()的性能比较
- 单链表的插入操作的实现(0952)SUWST-OJ
- bitcoin-memorypool源码分析
- ~~试除法分解质因数(附模板题)
- Redis入门到高可用(十一)—— 慢查询
- Python+OpenCV 设计GUI图像处理
- 现实竞争激烈,学透才能在职场做个风云人物,单片机存储器篇
- Java基础编程机试题
- VB2010(18)_各种对话框的使用
- 小学生 计算机编程 教程,小学生C++创意编程(视频教学版)
- 时间的几种格式以及它们之间的相互转换 (js)
- 图解域名解析DNS过程
- 值得学习17个C/C++ 超经典开源项目,面试加分
- 江西省省赛中职网络安全-Windows操作系统渗透测试
- 基于微信小程序的货物管理系统的设计与实现-计算机毕业设计源码+LW文档
- 搜狗输入法中文状态下,打出来还是英文按住键盘Ctrl+shift+E就可以了
热门文章
- 用VS2005打开一个.NET2.0方案,里面有几个工程和一个网站,提示网站的项目.csproj文件无法打开:“此安装不支持该项目类型”,的解决办法。...
- linux c语言工具,Linux下C语言编程环境的工具.doc
- 7.1 pdo 宝塔面板php_宝塔面板配置阿里云服务器步骤和教程
- python中的运算符举例_举例讲解Python中的算数运算符的用法
- python 词云_python数据可视化——词云
- Python爱好者,这里有一个库可以帮助你作为新手掌握人工智能!
- 教你如何查看 Git 提交中发生了什么变化
- 是什么轮胎_为什么现在的车轮胎轮毂尺寸越来越大
- java excel导出 jxl_java使用JXL导出Excel及合并单元格
- 【Java】排序算法之 冒泡排序