jsonArray与 jsonObject区别与js取值

1、JSONObject和JSONArray的数据表示形式json

JSONObject的数据是用 {  } 来表示的,数组

        例如:   { "id" : "123", "courseID" : "huangt-test", "title" : "提交做业", "content" : null  }  函数

而JSONArray,顾名思义是由JSONObject构成的数组,用  [ { } , { } , ......  , { } ]  来表示spa

       例如:   [ {  "id" : "123", "courseID" : "huangt-test", "title" : "提交做业" }  ,  {  "content" : null, "beginTime" : 1398873600000  "endTime" } ] ; code

        表示了包含2个JSONObject的JSONArray。对象

能够看到一个很明显的区别,一个最外面用的是 {  }  ,一个最外面用的是 [  ]  ;blog

 

JavaScript解析JSONip

**
解析json数组即对JSONArray的遍历字符串

1、对于标准的json数组如:it

var result=[{"flag":1,"macId":"2","mbId":0,"userName":"XXX"},{"flag":1,"macId":"1","mbId":1,"userName":"YYY"}];
 

进行遍历的时候,能够直接经过for循环遍历这个数组,有两种方法

1. 
for (var i = 0; i < result.length; i++) { //result[i]表示得到第i个json对象即JSONObject
        //result[i]经过.字段名称便可得到指定字段的值
 result[i].userName; }

 

2.
for(var i in result){ //表示遍历数组,而i表示的是数组的下标值,
        //result[i]表示得到第i个json对象即JSONObject
        //result[i]经过.字段名称便可得到指定字段的值
 result[i].userName; }

 

2、对于不标准的json数组如:

var result={"datas":[{"flag":1,"macId":"2","mbId":0,"userName":"XXX"},{"flag":1,"macId":"1","mbId":1,"userName":"YYY"}]};

 

进行遍历以前得先解析出标准的json数组格式即[{},{}]

var data= result.datas;
1.
 for (var i = 0; i < data.length; i++) { //data[i]表示得到第i个json对象即JSONObject
        //data[i]经过.字段名称便可得到指定字段的值
 data[i].userName; }

 

2.
 for(var i in data){ //表示遍历数组,而i表示的是数组的下标值,
        //data[i]表示得到第i个json对象即JSONObject
        //data[i]经过.字段名称便可得到指定字段的值
 data[i].userName; }

**

注意点:eval()方法的做用

**
在JS中将JSON的字符串解析成JSON数据格式,通常有两种方式:
1. 一种为使用eval()函数。
2. 使用Function对象来进行返回解析

相关文章
相关标签/搜索