Js读取json数据 && 循环读取JSON数据

转载 2012年03月28日 10:39:19
服务端向客户端返回了一串JSON格式的数据。在有些时候,因为某些特殊的原因我们不知道原始的key值,因此我们此时无法象正常一样通过key值,来获取value值。这时我们必须循环读取JSON对象数据。废话少说,来看例子。 

  服务端后台返回到客户端的JSON格式字符串:var str = '[{"uname":"王强","day":"2010/06/17"},{"uname":"王海云","day":"2010/06/11"}]';  

  我们把它转换成JSON对象:var jsonList=eval("("+str+")");这时候如果以用断点跟踪查看这个jsonList对象,其实你会发现,他的长度为2,即jsonList.length=2。它的每一项都是一个单独的JSON对象。请看下图:  

 

  这时候假设我们不知道"uname"和"day"这两个key值,我们开始对jsonList执行循环操作。 

  for(var i=0;i<jsonList.length;i++){

     for(var key in jsonList[i]){

           alert("key:"+key+",value:"+jsonList[i][key]); 

        } 

   }

  这样我们就可以轻松的获取我所需要的key值和value值了


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执行才能生成一个匿名对象!


相关文章推荐

.js循环读写通过ajax发送并返回的json数据

1   json  数据格式     [{lat:"126.6654363824",lon:"45.8505727440392",shipUrl:"http://www.w3.org/...

Js读取json数据实现分页

  • 2014-08-25 15:04
  • 939KB
  • 下载

JS读取json数据&&循环读取json数据

服务端向客户端返回了一串JSON格式的数据。在有些时候,因为某些特殊的原因我们不知道原始的key值,因此我们此时无法象正常一样通过key值,来获取value值。这时我们必须循环读取JSON对象数据。 ...

js读取json文件片段中的数据

在html中利用js读取动态网站从服务器端返回的数据进行显示 1、js.html 页面   需要引入 执行jquery的js文件 New Document ...

js读取json数据

转自;http://www.cnblogs.com/lingyuan/archive/2010/12/18/1909759.html 1.js 中读取JSON的方法探讨 js读取JSON的方法我接...

js读取解析JSON类型数据

转载:http://blog.csdn.net/beyond0851/article/details/9285771 一、什么是JSON? JSON(JavaScript Object Not...

js读取本地磁盘文本文件并保存为JSON数据(有格式的文本)

主要的代码是红色区域,HTML5获取本地文件对象并进行操作//给上传按钮添加点击事件 $(".myappTXTUploadBtn").click(function(){ va...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)