js 中读取JSON的方法探讨
js读取JSON的方法我接触到的有两种:
方法一:函数构造定义法返回
var strJSON = "{name:'json name'}"//得到的JSON
var obj = new Function("return" + strJSON)()//转换后的JSON对象
alert(obj.name)//json name
方法二:js中著名的eval函数
var strJSON = "{name:'json name'}"//得到的JSON
var obj = eval( "(" + strJSON + ")" )//转换后的JSON对象
alert(obj.name)//json name
第二种方法需要注意的是,对象表达式{'name':'json name'}必须用“()”扩住,否则
var strJSON = "{name:'json name'}"
var obj = eval(strJSON)
alert(obj.constructor)//String 构造函数
alert(obj.name)//undefine
必须把对象表达式扩起来eval执行才能生成一个匿名对象!
JSON 一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。(现在公司大部分都用这个)。 json的表示方式:{"city":"Beijing","street":" Chaoyang Road ","postcode":100025} ,这就是个简单的json对象。实际上此处的 json对象相当于 Java 中的 Map<String, Object>。注意 Key 只能用 String 表示。其中 Value 也可以是另一个 Object 或者数组,因此,复杂的 Object 可以嵌套表示,例如,一个 Person 对象包含 name 和 address 对象,可以表示如下:
{"name":"Michael","address":
{"city":"Beijing","street":" Chaoyang Road ","postcode":100025}
}
</SPAN>
</SPAN>JavaScript 处理 JSON 数据
function handleJson() {
var j={"name":"Michael","address":
{"city":"Beijing","street":" Chaoyang Road ","postcode":100025}
}
document.write(j.name)
document.write(j.address.city)
}
现在一般在后台用gson将数据转换成json对象,前台用jquery的ajax与后台的数据进行交互。具体咋用网上有很多实例,如果实在不懂得话,加我的qq:1249119842.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)