JsON(JavaScript Object Notation) 是1种轻量级的数据交换格式,采取完全独立于语言的文本格式,是理想的数据交换格式。同时,JsON是JavaScript 原生格式,这意味着在 JavaScript 中处理 JsON数据不需要任何特殊的 API 或工具包。本文主要是对Js *** 作JsON的方法做下总结。
在JsON中,有两种结构:对象和数组。 1. 1个对象以“{”(左括号)开始,“}”(右括号)结束。每一个“名称”后跟1个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不需要。例如: var o={"xlID":"cxh","xldigitID":123456,"topscore":2000,"topplaytime":"2009-08⑵0"}; 2. 数组是值(value)的有序集合。1个数组以“[”(左中括号)开始,“]”(右中括号)结束。值之间使用“,”(逗号)分隔。 例如: var JsonrankList=[{"xlID":"cxh","topplaytime":"2009-08⑵0"},{"xlID":"zd","topscore":1500,"topplaytime":"2009⑴1⑵0"}];
为了方便地处理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" };
1、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本来就是1个JsON对象,那末使用eval()函数转换后(哪怕是屡次转换)还是JsON对象,但是使用parseJsON()函数处理后会有问题(抛出语法异常)。
2、可使用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包版本太低。
其他精彩文章
jquery教程(19)-jquery AJAX *** 作之序列化表单jquery教程(18)-AJAX *** 作之履行POST要求jquery教程(17)-AJAX *** 作之向服务器传递数据 履行GET要求jquery教程(16)-AJAX *** 作之加载XML文档jquery教程(15)-AJAX *** 作之履行脚本jquery教程(14)-AJAX *** 作之 *** 作 JavaScript 对象更多关于androID开发文章
总结以上是内存溢出为你收集整理的JS *** 作JSON总结全部内容,希望文章能够帮你解决JS *** 作JSON总结所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)