简体   繁体   中英

Why does the following part crash my browser?

I just wanted to add the following part to my code. When I do this, I get no more output in the console and the browser crashes every time. If I comment out the part, everything works fine again. I have already tested everything (shortened loop runs, smaller data set, ..) but nothing helps. Does somebody has any idea?

var index_avg_temp_array = []; // array which saves the temperature of each Cluster
index_avg_temp_array.push([]); // creates 2d array
for (id = 0; id < cluster_points; id++) {
  // id = index of the cluster

  var t_array = []; // create array / set array to 'empty'
  var amount = 0;
  var check = 0;

  // takes the id and check if day_array[].index === id
  for (day = 0; day < days_of_year; day++) {
    // 365/366 runs, day_array has 1 entry for each day

    if (day_array[day].index === id) {
      for (hour = 0; hour < 24; hour++) {
        // if true - save the hourly temperatures in hour_array

        var row = day * 24 + hour;
        var t_temp = hour_array[row].temp; // temperature of each hour
        t_array.push(t_temp);
      }
      check = 1; // if index was found for at least 1 time
      amount = amount + 1;
    }
  }
  if (check === 1) {
    // check if the index was found for at least 1 time
    for (hour = 0; hour < 24; hour++) {
      var avg = 0;
      for (counter = 0; counter < t_array.length; counter + 24) {
        var row = hour * 24 + counter;
        avg = avg + t_array[row]; // sum up each hour
      }

      var avg_hours = avg / amount; // calculate the avg of the hour
      index_avg_temp_array[id].push(avg_hours); // save the avg temperatures of each hour for each cluster point
    }
  }
}
for (counter = 0; counter < t_array.length; counter + 24) {

This results in an infinte loop because counter never gets updated. counter + 24 should be counter += 24 :

for (counter = 0; counter < t_array.length; counter += 24) {

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM