javascript - json数据取值的问题
PHP中文网
PHP中文网 2017-04-11 12:30:38
[JavaScript讨论组]
{"data":
    {"chartModelList":
        [
            {"year":"2017","weatherRainList":
                [
                    {"id":10,"year":"2017","month":"8","period":"1","rain_num":100.0,"temperature":1900.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954771000},
                    {"id":7,"year":"2017","month":"7","period":"1","rain_num":800.0,"temperature":1300.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954764000},
                    {"id":8,"year":"2017","month":"7","period":"2","rain_num":800.0,"temperature":1500.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954767000},
                    {"id":9,"year":"2017","month":"7","period":"3","rain_num":1400.0,"temperature":1700.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954769000},
                    {"id":6,"year":"2017","month":"6","period":"3","rain_num":200.0,"temperature":1100.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954761000}
                ]
            },
            {"year":"2016","weatherRainList":
                [
                    {"id":5,"year":"2016","month":"8","period":"1","rain_num":600.0,"temperature":1800.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954751000},
                    {"id":2,"year":"2016","month":"7","period":"1","rain_num":660.0,"temperature":1200.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954749000},
                    {"id":3,"year":"2016","month":"7","period":"2","rain_num":900.0,"temperature":1400.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954747000},
                    {"id":4,"year":"2016","month":"7","period":"3","rain_num":900.0,"temperature":1600.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954745000},
                    {"id":1,"year":"2016","month":"6","period":"3","rain_num":660.0,"temperature":1000.0,"status":1,"remarks":null,"create_id":null,"create_time":1488944675000,"update_time":1488954741000}
                ]
            }
        ]
    }
,"msg":"success","code":200}

现在我想取出rain_num,temperature两个值 for循环要怎么写?

PHP中文网
PHP中文网

认证0级讲师

全部回复(5)
大家讲道理
var rs = {"data":
    {"chartModelList":
        [
            {"year":"2017","weatherRainList":
                [
                    {"id":10,"year":"2017","month":"8","period":"1","rain_num":100.0,"temperature":1900.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954771000},
                    {"id":7,"year":"2017","month":"7","period":"1","rain_num":800.0,"temperature":1300.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954764000},
                    {"id":8,"year":"2017","month":"7","period":"2","rain_num":800.0,"temperature":1500.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954767000},
                    {"id":9,"year":"2017","month":"7","period":"3","rain_num":1400.0,"temperature":1700.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954769000},
                    {"id":6,"year":"2017","month":"6","period":"3","rain_num":200.0,"temperature":1100.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954761000}
                ]
            },
            {"year":"2016","weatherRainList":
                [
                    {"id":5,"year":"2016","month":"8","period":"1","rain_num":600.0,"temperature":1800.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954751000},
                    {"id":2,"year":"2016","month":"7","period":"1","rain_num":660.0,"temperature":1200.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954749000},
                    {"id":3,"year":"2016","month":"7","period":"2","rain_num":900.0,"temperature":1400.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954747000},
                    {"id":4,"year":"2016","month":"7","period":"3","rain_num":900.0,"temperature":1600.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954745000},
                    {"id":1,"year":"2016","month":"6","period":"3","rain_num":660.0,"temperature":1000.0,"status":1,"remarks":null,"create_id":null,"create_time":1488944675000,"update_time":1488954741000}
                ]
            }
        ]
    }
,"msg":"success","code":200}

rs.data.chartModelList.forEach(function(rain){
  rain.weatherRainList.forEach(function(item){
    console.log(item.rain_num,item.temperature);
  });
});
PHP中文网

不用for循环,用正则也可:

var data={"data":
    {"chartModelList":
        [
            {"year":"2017","weatherRainList":
                [
                    {"id":10,"year":"2017","month":"8","period":"1","rain_num":100.0,"temperature":1900.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954771000},
                    {"id":7,"year":"2017","month":"7","period":"1","rain_num":800.0,"temperature":1300.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954764000},
                    {"id":8,"year":"2017","month":"7","period":"2","rain_num":800.0,"temperature":1500.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954767000},
                    {"id":9,"year":"2017","month":"7","period":"3","rain_num":1400.0,"temperature":1700.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954769000},
                    {"id":6,"year":"2017","month":"6","period":"3","rain_num":200.0,"temperature":1100.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954761000}
                ]
            },
            {"year":"2016","weatherRainList":
                [
                    {"id":5,"year":"2016","month":"8","period":"1","rain_num":600.0,"temperature":1800.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954751000},
                    {"id":2,"year":"2016","month":"7","period":"1","rain_num":660.0,"temperature":1200.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954749000},
                    {"id":3,"year":"2016","month":"7","period":"2","rain_num":900.0,"temperature":1400.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954747000},
                    {"id":4,"year":"2016","month":"7","period":"3","rain_num":900.0,"temperature":1600.0,"status":1,"remarks":"","create_id":null,"create_time":1488944675000,"update_time":1488954745000},
                    {"id":1,"year":"2016","month":"6","period":"3","rain_num":660.0,"temperature":1000.0,"status":1,"remarks":null,"create_id":null,"create_time":1488944675000,"update_time":1488954741000}
                ]
            }
        ]
    }
,"msg":"success","code":200};

var dataStr=JSON.stringify(data);
var reg=/"rain_num":([0-9\.]+),"temperature":([0-9\.]+)/g;
var matches;
while(matches=reg.exec(dataStr)){
    console.log('雨量:'+matches[1]+','+'温度:'+matches[2]+'\n');
}

黄舟
data.chartModelList.forEach(function(a){
   a.weatherRainList.forEach(function(b){
       b.rain_num;
       b.temperature;
   });
});
迷茫

伪代码:

jsonArray ja=data->chartModelList
for(int i=0;i<ja.size();i++){
      json jo=ja.getJsonObject(i);
      jsonArray weatherRainList= jo->weatherRainList;
      for(int j=0;j<weatherRainListList.size();j++){
      json weatherRainList=weatherRainListList.getJsonObject(i);
       temperature=weatherRainList->temperature
       rain_num=weatherRainList->rain_num
      }
   
}
黄舟

var arr = .data.chartModelList;
for(lgn = arr.length, var i = 0; i < lgn; i++){

var inarr = arr[i].weatherRainList;
for(var inlgn = inarr.length, j = 0; j < inlgn; j++){
    console.log(inarr[j].rain_num);
    console.log(inarr[j].temperature);
}

}

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号