zoukankan      html  css  js  c++  java
  • jQuery loop over JSON字符串 – $.each实例

    先来一段简单的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);
    });
    
    
    

    当为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"}...


    解决方案:
    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);
    });

     

     

  • 相关阅读:
    进制转换问题
    奶牛野炊
    BFS
    深搜DFS
    Map容器之热血格斗场
    衣服尺码
    BZOJ2789 [Poi2012]Letters
    BZOJ1098 [POI2007]办公楼biu
    BZOJ1753 [Usaco2005 qua]Who's in the Middle
    BZOJ2442 [Usaco2011 Open]修剪草坪
  • 原文地址:https://www.cnblogs.com/Web-Architecture/p/5132812.html
Copyright © 2011-2022 走看看