• 技术文章 >web前端 >js教程

    JQuery $.each遍历JavaScript数组对象实例_jquery

    2016-05-16 16:38:20原创627
    查看一个简单的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 字符串

    下面的例子中,声明了一个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);
    });
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:each 遍历 数组
    上一篇:超级好用的jQuery圆角插件 Corner速成_jquery 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 一文详解Node中的模块化、文件系统与环境变量• 为什么要用debugger来调试代码?这样你能读懂各种源码!• 一文聊聊Node包管理发展的五个阶段• 一文探究Angular中的服务端渲染(SSR)• 带你了解Angular组件间进行通信的几种方法
    1/1

    PHP中文网