json对象解析两种方法
关于JSON
JSON(JavaScript Object Notation,JavaScript对象表示法)是一个轻量级的数据格式,可以简化表示复杂数据结构的工作量。
支持表示三种类型的值:
- 简单值 :
5
或者“hello world”
数值或者字符串或者布尔值或者null
。但不支持undefined
; - 对象: 带引号的键值对儿
{
“name”:“Yumay”,
“age”: 18,
“sex”:“female"
} - 数组
[
{
“name”:“Yumay”,
“age”: 18,
“sex”:“female"
},
{
“name”:“Yumay”,
“age”: 18,
“sex”:“female"
},
{
“name”:“Yumay”,
“age”: 18,
“sex”:“female"
}
]
解析JSON
一种方法是使用eval函数。
var dataObj = eval(“(“+json+”)”);
加上圆括号的目的是迫使eval函数在处理JavaScript代码的时候强制将括号内的表达式(expression)转化为对象,而不是作为语句(statement)来执行将json数据转换为json对象。
使用eval函数解析JSON是一种很不安全的方式,能不用最好就不用,原因是eval不但可以解析JSON字符串,还会执行其中的代码块(如果有的话)
所以我们比较常用的就是使用JSON.parse()方法解析
var obj = JSON.parse(jsondata);
举个栗子:
转载自http://blog.****.net/yumay2009/article/details/51588160