Menu schließen

javaScript

Frage: javaScript
(4 Antworten)

 
Hallo zusamme.

Ich habe ein Problem mit javascript:

Ich möchte einen Vector in einem Vector speichern.
An einem Ort geht es.
Beim folgenden Code bekomme ich folgendes Resultat:
1.
Durchgang durch die Schlaufe: [1,1,1]
2. Durchgang durch die Schlaufe: [2,2,2;2,2,2]
ich würde jedoch[1,1,1;2,2,2] erwarten.
Kenn mir jemand helfen?
Vielen Danke

<html>
<body>
<script type="text/javascript">
var test = new Array();
var test1 = new Array();

mm=0;
nr=0;

while (mm < 10) {
alert(mm);
test[0]=1+mm;
test[1]=1+mm;
test[2]=1+mm;

test1[mm]=test;
alert(test1);
mm++;
nr++;
}

</script>
</body>
</html>
GAST stellte diese Frage am 19.10.2010 - 11:00


Autor
Beiträge 4080
17
Antwort von S_A_S | 19.10.2010 - 11:35
trace das doch einfach mal schritt weise durch.
Davon abgesehen,
wenn du nicht schreibst, was das Teil tun soll, sondern nur was in dem Beispiel rauskommen soll, dann wird dir kaum einer helfen können, da ein einzelnes Ergebnis nicht zwangsläufig auf eine Systematik schließen lässt - zu mal dein Code ja offensichtlich falsch ist.

 
Antwort von GAST | 19.10.2010 - 12:04
Selbstverständlich ist der Code gekürzt.

ja habe ich bereits gemacht.

Das Problem ist, dass beim Schritt.
test1[mm]=test;
eine neue Stelle an angefügt und alle Zeilen des Vektors "test1" mit der Variable "test" überschrieben werden und nicht nur die neue "Stelle" damit gefüllt wird.


Autor
Beiträge 4080
17
Antwort von S_A_S | 19.10.2010 - 14:58
test1[mm] = test
ändert den Wert von test1 an index mm und ersetzt ihn durch test.
Und du willst einfach etwas angefügt haben, statt etwas zu ersetzen?

 
Antwort von GAST | 19.10.2010 - 15:14
jein..
wenn ich die Funktion laufen lasse, ersetzt er mir nicht nur test an der Stelle von index mm sondern alle Stellen.

Verstoß melden
Hast Du eine eigene Frage an unsere Informatik-Experten?

> Du befindest dich hier: Support-Forum - Informatik
ÄHNLICHE FRAGEN: