js代码:
var sum = 0; var count = 0; //如果大于三个月 var smonth = start.substring(8,10); var emonth = end.substring(8,10); // if((emonth - smonth) > 3){ //如果大于多少条 var item = 1000;//条数 if(data.length > item){ var timestamp = parseInt(new Date().getTime()/1000); // start = start.substring(0,19);如果时间格式有问题时使用 // start = start.replace(/-/g,'/'); var s = new Date(data[0].createtime.substring(0, 16)).getTime(); sum = s; var e = new Date(data[data.length-1].createtime.substring(0, 16)).getTime(); //计算起止时间的平均值,用来每次添加数据后增长时间 count = parseInt((e-s)/item); for(var j = 0 ; j<data.length; j++){ var sumdate = getTimeDate(sum); var ctime = data[j].createtime.substring(0, 16); var date1 = new Date(sumdate); var date2 = new Date(ctime); //如果所要时间小于数据时间或与数据时间相等,添加数据并增长所要时间 if(date1 < date2 || date1 - date2 == 0){ net.push(data[j].net); createtime.push(data[j].createtime); lnet.push(data[j].lnet); lnet_out.push(data[j].lnet_out); net_out.push(data[j].net_out); net_avg.push(data[j].net_avg); cpu.push(data[j].cpu); mem.push(data[j].memory); sum = sum + count; } } var sumdate = getTimeDate(sum); }else{ //如果不符合条件,走普通 for(var j = 0 ; j < data.length; j++){ net.push(data[j].net); createtime.push(data[j].createtime); lnet.push(data[j].lnet); lnet_out.push(data[j].lnet_out); net_out.push(data[j].net_out); net_avg.push(data[j].net_avg); cpu.push(data[j].cpu); mem.push(data[j].memory); } }