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 字符串

下面的例子中,声明了一个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' 
in [{"id":"1","tagName":"apple"}...

解决方案:JSON字符串转换为JavaScript对象。
要修复它,通过标准JSON.parse()或jQuery 的 $.parseJSON 将其转换为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);
});

转自:http://www.jb51.net/article/54570.htm

 

最新文章

  1. 解决:win10_x64 VMware Workstation and Hyper-V are not compatible. Remove the Hyper-V role from the system before running VMware Workstation
  2. Java 集合 — ArrayList
  3. 深度分析Linux下双网卡绑定七种模式 多网卡的7种bond模式原理
  4. 如何自定义FloatingActionButton的大小
  5. 4 张 GIF 图帮助你理解二叉查找树
  6. GitHub--git push出错解决
  7. php错误级别设置
  8. 如何在django中使用多个数据库
  9. Mysql日期函数,时间函数使用的总结
  10. day1作业脚本
  11. JavaScript学习--8.1
  12. 老李推荐:第6章4节《MonkeyRunner源码剖析》Monkey原理分析-事件源-事件源概览-翻译命令字串
  13. 利用jackson-databind,复杂对象对象和json数据互转
  14. [js]javascript索引
  15. es6学习笔记-Proxy、Reflect、Promise
  16. UR#13 SRAND
  17. STM32应用实例十五:STM32的ADC通道间干扰的问题
  18. python早期看书笔记
  19. Android设备网络、屏幕尺寸、SD卡、本地IP、存储空间等信息获取工具类
  20. 【CodeForces】901 B. GCD of Polynomials

热门文章

  1. C++算法库学习__std::sort__对 vector进行排序_排序后就可以进行使用std::lower_bound进行二分查找(查找第一个大于等于指定值的迭代器的位置)__std::unique
  2. 413 Request Entity Too Large报错处理
  3. MySQL单表数据不超过500万:是经验数值,还是黄金铁律?
  4. java虚拟机(八)--java性能监控与故障处理工具
  5. 以gnome-terminal为例,修改gnome3 的默认配置
  6. linux nethogs-终端下的网络流量监控工具
  7. Python的/整除
  8. js之定时器操作
  9. POJ 2217 Secretary
  10. Linux & Filesystem Hierarchy Standard