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);

举个栗子:

json对象解析两种方法

转载自http://blog.csdn.net/yumay2009/article/details/51588160