JSON 文本格式在语法上与创建 JavaScript 对象的代码相同。
由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 JavaScript 对象。
JSON语法规则:
数据在 名称/值 对仲
数据由逗号分隔
花括号保存对象
方括号保存数组
JSON 名称/值 对介绍
"name":"张飞", "age":23
Json的值可以是:
数字(整数或浮点数)
字符串(要包括在双引号中)
逻辑值(true或false)
数组(在方括号中)
对象(在花括号中)
Json转javascript对象的方法为:
eval("(" + str + ")");
代码示例:
<html> <head> <title>Json测试</title> <script src="/Scripts/jquery-1.7.2.min.js" type="text/javascript"></script> <script type="text/javascript"> //基本上,Json返回的要么是对象,要么是数组,如果单纯返回一个字符串,那么就没有必要用Json了,因此 //Json基本就下面这些可,不过要注意双引号 var str0 = "{employees:'测试'}"; var obj0 = eval("(" + str0 + ")"); alert(obj0.employees); //输出测试 var str = "{name:'张三',Age:21}"; var obj = eval("(" + str + ")"); document.write(obj.name + obj.Age); //输出 张三21 alert(obj.name); //别看下面那段Json长,其实是一个对象,属性employees的值是一个对象数组。和上面的相比,只是name:张三 中的"张三"字符串 变成了对象数组而已 var str2 = '{ "employees" : [' + '{ "firstName":"Bill" , "lastName":"Gates" },' + '{ "firstName":"George" , "lastName":"Bush" },' + '{ "firstName":"Thomas" , "lastName":"Carter" } ]}'; var obj2 = eval("(" + str2 + ")"); alert(obj2.employees[0].firstName); //弹出 Bill var str3 = "[1,2,3,4,5,6]"; //json 数组 var obj3 = eval("(" + str3 + ")"); //输出 2 alert(obj3[1]); </script> </head> <body> <div id="div1"> </div> </body> </html>
Json与JavaScript对象转换
JSON转javascript对象
//Json转对象1 function JsonToObject(str) { return eval("(" + str + ")"); } //Json转对象2 function strToJson(str){ var json = (new Function("return " + str))(); return json; } //Json转对象3 jQuery工具函数 $.parseJSON()
javascript对象转JSON
//javascript对象转Json function ObjectToJson(o) { var arr = []; var fmt = function(s) { if (typeof s == 'object' && s != null) return json2str(s); return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s; } for (var i in o) arr.push("'" + i + "':" + fmt(o[i])); return '{' + arr.join(',') + '}'; }
以上就是本文的全部内容,希望对大家有所帮助,谢谢对小牛知识库的支持!
本文向大家介绍Python中json格式数据的编码与解码方法详解,包括了Python中json格式数据的编码与解码方法详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python中json格式数据的编码与解码方法。分享给大家供大家参考,具体如下: python从2.6版本开始内置了json数据格式的处理方法。 1、json格式数据编码 在python中,json数据格式编码使用json
本文向大家介绍详解sql中exists和in的语法与区别,包括了详解sql中exists和in的语法与区别的使用技巧和注意事项,需要的朋友参考一下 exists和in的区别很小,几乎可以等价,但是sql优化中往往会注重效率问题,今天咱们就来说说exists和in的区别。 exists语法: select … from table where exists (子查询) 将主查询的结果,放到子查询结果
本文向大家介绍详解js正则表达式语法介绍,包括了详解js正则表达式语法介绍的使用技巧和注意事项,需要的朋友参考一下 本文介绍了js正则表达式,具体如下: 1. 正则表达式规则 1.1 普通字符 字母、数字、汉字、下划线、以及后边章节中没有特殊定义的标点符号,都是"普通字符"。表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的一个字符。 举例1:表达式 "c",在匹配字符串
本文向大家介绍JS中的phototype详解,包括了JS中的phototype详解的使用技巧和注意事项,需要的朋友参考一下 1 原型法设计模式 在.Net中可以使用clone()来实现原型法 原型法的主要思想是,现在有1个类A,我想要创建一个类B,这个类是以A为原型的,并且能进行扩展。我们称B的原型为A。 2 javascript的方法可以分为三类: a 类方法 b 对象方法 c 原型方法 例子:
本文向大家介绍C#实现json格式数据解析功能的方法详解,包括了C#实现json格式数据解析功能的方法详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#实现json格式数据解析功能的方法。分享给大家供大家参考,具体如下: 来写写json的解析吧 首先添加web引用 System.Web.Extensions 路径 c:\Program Files (x86)\Reference As
本文向大家介绍AngularJS语法详解,包括了AngularJS语法详解的使用技巧和注意事项,需要的朋友参考一下 模板和数据的基本运作流程如下: 用户请求应用起始页面 用户的浏览器向服务器发起一次http连接,然后加载index.html页面,这个页面包含了模板 angular被加载到页面中,等待页面加载完成,查找ng-app指令,用来定义模板的边界 angular遍历模板,查找指定和绑定关系,