Struppi: Arrayproblem

Beitrag lesen

Mein Problem ist, dass alle Elemente gefunden werden aber mit push nicht wie erwartet drei Zeilen ausgegeben werden sondern nur eine. Jedes Element überschreibt die Array[2]-Zeile. Ich weiß aber nicht was ich falsch mache.

Was ist die Array[2] Zeile?
Und wieso sollten mit dem push drei Zeilen ausgegeben werden? ausgegeben sowieso nicht, aber du fügst nur HTML Code für eine Zeile in das Array.

also er findet in diesem beispiel 3 Elemente welche ich in diesem Array eintragen will:

b_bestand[0][0]  -  b_bestand[0][11]
bis
b_bestand[n][0]  -  b_bestand[n][11]

hier werden alle 3 Elemte in

b_bestand[2][0]  -  b_bestand[2][11]

geschrieben also 1. eingefügt und das zweite überschreibt es wieder.

Das sagst du, hilft aber nicht weiter. Mir erschließt sich dein Problem nicht, bei so komplexen Fragen ist es meistens sinnvoller ein Beispiel zu bauen, mit dem man Fehler nachvollziehen kann.

b_bestand[foundPos] = new Array(ExNumin, ExNomEta, ExPlz, ExOrt, ExGebiet, lastLief, datum_array[0][1], durchQte, durchRytmus, nextLief, anzLief, warning );
           }
           else {
               b_bestand[foundPos][0] = ExNumin;
                b_bestand[foundPos][1] = ExNomEta;
                b_bestand[foundPos][2] = ExPlz;
                b_bestand[foundPos][3] = ExOrt;
                b_bestand[foundPos][4] = ExGebiet;
                b_bestand[foundPos][5] = lastLief;
                b_bestand[foundPos][6] = datum_array[0][1];
                b_bestand[foundPos][7] = durchQte;
                b_bestand[foundPos][8] = durchRytmus;
                b_bestand[foundPos][9] = nextLief;
                b_bestand[foundPos][10] = anzLief;
                b_bestand[foundPos][11] = warning;
           }

So ganz klar, warum du hier zwei unterschiedliche Methoden anwendest ist mir das nicht.

Array.Push fügt doch am Ende eines Arrays ein oder mehrere Elemente hinzu und gibt die neue Länge des Arrays aus.

also müsste ich hier doch dann drei Zeilen haben und nicht eine.

Was für 3 Zeilen?
In dem von mir gezeigten Code verwendest du zwei unterschiedliche Methoden um ein Array zu erzeugen, was mich wundert.

tr      = tr.sort();
var zeilen  = tr.length;
var mHtml   = "";

for(var p=0; p <= zeilen-1; p++) {
  if(zeilen > 0) {
    mHtml += ""+ tr[0]+ "";

Also immer nur die erste Zeile?

Wie gesagt, mach ein Beispiel ansonsten wird es schwer dir zu helfen.

Struppi.