zoukankan      html  css  js  c++  java
  • 使用for in循环遍历json对象的数据


    使用for in遍历json对象数据,如果数据中的名称有为数字的话,只对正整数有效,那么先会输出为正整数的数据,后面其他的会按照原来数据中定义的顺序不变输出。

    • 针对名称为数字的json对象数据进行测试,代码如下:
    <script type="text/javascript">
    
     var json_obj_data = 
    {
        "40":{"title":"all" , "name" :"all promotions" ,"id" :"all"},
        "20":{"title":"best_room_rate" , "name" : "best room rate" , "id" : "best_room_rate"},
        "10":{"title":"summer rate" , "name" : "summer rate" , "id" : "30"}    
    }
    //40,20,10可以不加双引号括住,输出的结果是一样的
    for(var data in json_obj_data){ alert(data);//10->20->40 } </script>
    • 针对名称为字符串的json对象数据进行测试,代码如下:
    var json_data = {"3promotion":{"title":"all","room_promotion_id":"all"},
                                 "2promotion":{"title":"best_room_rate","roompromotion_id":"best_room_rate"},
                                "1promotion":{"title":"Summer Room rate" , "room_promotion_id":"30"}
                                };
                
    for(var promotion in json_data){
              alert(promotion);//输出结果是按照上面定义的顺序
    }
    • 针对名称为数字和字符串的json对象数据测试,代码如下:
    var json_data = {"3promotion":{"title":"all","room_promotion_id":"all"},
                                 "2promotion":{"title":"best_room_rate","roompromotion_id":"best_room_rate"},
                                "1":{"title":"Summer Room rate" , "room_promotion_id":"30"}
                                };
                
     for(var promotion in json_data){
            alert(promotion);//数据先输出的是名称为数字的,然后就按照顺序输出名称为字符串的
     }

    具有两个名称为数字的,其他为字符串的json对象数据测试,代码如下:

    var json_data = {"3promotion":{"title":"all","room_promotion_id":"all"},
                                 "2promotion":{"title":"best_room_rate","roompromotion_id":"best_room_rate"},
                                "1":{"title":"Summer Room rate" , "room_promotion_id":"30"},
                                "0":{"title":"expecial rate" , "room_promotion_id":"60"}
                                };
                
    for(var promotion in json_data){
          alert(promotion);//输出结果为0->1->3promotion->2promotion
    }

    具有名称为数字,其中有为负数的将会被当作字符串处理,其他为字符串的json对象数据测试,代码如下:

    var json_data = {"3promotion":{"title":"all","room_promotion_id":"all"},
                                 "2promotion":{"title":"best_room_rate","roompromotion_id":"best_room_rate"},
                                "1":{"title":"Summer Room rate" , "room_promotion_id":"30"},
                                "0":{"title":"expecial rate" , "room_promotion_id":"60"},
                                "-1":{"title":'demo3','room_promotion_id':"demo3"}
                                };
                
     for(var promotion in json_data){
           alert(promotion);//0->1->3promotion->2promotion->-1
     }

     包括小于1的数字名称,以及数字为负数的名称,代码测试如下:

    var json_data = {"3promotion":{"title":"all","room_promotion_id":"all"},
                                 "2promotion":{"title":"best_room_rate","roompromotion_id":"best_room_rate"},
                                "1":{"title":"Summer Room rate" , "room_promotion_id":"30"},
                                "0.25":{"title":"expecial rate" , "room_promotion_id":"60"},
                                "-1":{"title":'demo3','room_promotion_id':"demo3"}
                                };
                
    for(var promotion in json_data){
        alert(promotion);//1->3promotion->2promotion->0.25->-1
    }
  • 相关阅读:
    创建ASP.NET WEB自定义控件——例程2
    创建ASP.NET WEB自定义控件——例程1
    自己空余時間完成的textbox控件
    创建ASP.NET WEB自定义控件——例程3
    datagrid分頁,排序,跨頁多選。
    ”Bug“一词的来源
    『HTML』Frame框架运用的技术
    JavaScript脚本关闭浏览器窗口不出现提示框小技巧
    『JavaScript』利用Javascript获取IP地址内容方法
    【转】WinForm中实现各窗体之间切换,关闭,打开的操作
  • 原文地址:https://www.cnblogs.com/shuman/p/3899977.html
Copyright © 2011-2022 走看看