A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 喜爱 高级黑马   /  2014-5-18 15:55  /  853 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

JS怎样解析JSON数据

5 个回复

倒序浏览
http://blog.csdn.net/lidongmao00/article/details/7785965
回复 使用道具 举报
一、要想熟练的操作json数据,就先要了解json数据的结构,json有两种结构:对象和数组。
  1、对象
一个对象以“{”开始,“}”结束。每个“名称”后跟一个“:”;“‘名称/值’
对”之间使用“,”分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不需要。例如:
var jsonObj=
        
二、JSON(JavaScript Object Notation)
是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。json在传输过程中是以文本形式存在的,即字符串的形式。而在JS
中需要操作的是对象,所以需要把json转换成对象,一般用“eval_r()”函数来实现,例如:varobj = eval_r('(' + json+ ')'); 这样就可以随意操作json了。
  for(var i=0;i
  alert("key:"+key+",value:"+jsonList[i][key]);}  }用这种方法就可以解析json数据了。
回复 使用道具 举报
1.在不知道JSON数据中的KEY值的情况下遍历整个JSON:
     var json = {“key1”:“value1”,“key2”:“value2” ,“key3”:“value3”}
     for(var key in json){
        alert(json[key]);
    }   //依次弹出value1、value2、value3的值
  2.对于更加复杂的JSON数据;
     var xml = [
           {
                "河北省":["保定市","石家庄","秦皇岛"]
           },
           {
                "北京市":["海淀区","西城区"]
           },
           {
                "山西省":["太原"]
           }
      ]
     for(var i=0;i<xml.length;i++){  // i表示第一层数组中的元素角标
           for(var key in xml[i]){        // xml[i]表示第一层数组中的各个元素,比如xml[0]表示{"河北省":["保定市","石家庄","秦皇岛"]}
                for(var j=0;j<xml[i][key].length;j++){    // j表示xml[i]中的以key为键的数组的角标
                    alert(xml[i][key][j]);      
                }
          }
    }   
回复 使用道具 举报 1 0
jsjchenlong 发表于 2014-5-18 16:30
http://blog.csdn.net/lidongmao00/article/details/7785965

O(∩_∩)O谢谢,分享!
回复 使用道具 举报
喜爱 发表于 2014-5-19 09:36
O(∩_∩)O谢谢,分享!

客气了。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马