来源:自学PHP网 时间:2014-11-29 13:28 作者: 阅读:次
[导读] 声明了一个JSON字符串直接遍历,在Chrome控制台下面报错,解决方法是将JSON字符串转换为JavaScript对象...
查看一个简单的jQuery的例子来遍历一个JavaScript数组对象。 var json = [ {"id":"1","tagName":"apple"}, {"id":"2","tagName":"orange"}, {"id":"3","tagName":"banana"}, {"id":"4","tagName":"watermelon"}, {"id":"5","tagName":"pineapple"} ]; $.each(json, function(idx, obj) { alert(obj.tagName); }); 上面的代码片断工作正常,提示 “apple”, “orange” … 等,如预期一样。 下面的例子中,声明了一个JSON字符串(随附单或双引号)直接地。 var json = '[{"id":"1","tagName":"apple"},{"id":"2","tagName":"orange"}, {"id":"3","tagName":"banana"},{"id":"4","tagName":"watermelon"}, {"id":"5","tagName":"pineapple"}]'; $.each(json, function(idx, obj) { alert(obj.tagName); }); 在Chrome中,它显示在控制台下面的错误: Uncaught TypeError: Cannot use 'in' operator to search for '156' 解决方案:JSON字符串转换为JavaScript对象。 var json = '[{"id":"1","tagName":"apple"},{"id":"2","tagName":"orange"}, {"id":"3","tagName":"banana"},{"id":"4","tagName":"watermelon"}, {"id":"5","tagName":"pineapple"}]'; $.each(JSON.parse(json), function(idx, obj) { alert(obj.tagName); }); //or $.each($.parseJSON(json), function(idx, obj) { alert(obj.tagName); }); |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com