Struppi: Arrays per Schleife erzeugen bzw überschreiben

Beitrag lesen

Hallo Ihr alle!
Ich habe hier ein Problem mit einer Schleife:

if (i == 0) {
  planen[i] = new Array(id,persnr,abwmerkmal,datum);
  i++;
  }

else {
   var z = planen.length-1
   for (y=0;y<=z;y++){
       while  (datum != planen[y][3]) {
            planen[i] = new Array(id,persnr,abwmerkmal,datum);
            i++;
            break;
        }
   }
}

Array sollen erzeugt werden (über einen onClick-Eintrag, hier jetzt irrelevant). Dort, wo bereits für einen Tag (datum bzw. planen[][3]) besteht, soll das Array direkt überschrieben werden. Wenn das Datum noch frei ist, dann soll am Ende der Schleife ein neues Array angehängt werden.

sinnvollerweise benutzt du ein assoziatives Array dafür:

planen[datum] = new Array(id,persnr,abwmerkmal);

Das kann man checken wenn man muss:
if(!planen[datum]) planen[datum] = new Array(id,persnr,abwmerkmal);

Hat aber denn Nachteil, das du nicht mehr an Länge des Arrays kommst und die Schleifen sehen dann so aus:

for(var datum in planen)
{
    alert(datum + ':' + planen[datum]);
}

Struppi.