![]() |
SELFHTML Forumsarchiv |
|
|
Die folgende Nachricht zum Thema stammt von: Andi, 30. 07. 2006, 19:17
Hallo!
Ich habe ein Array mit Objekten, die ich per getElementsByTagName hole.
Nun möchte ich dieses Array in einer Schleife aussortieren. Wenn ich allerdings
ErstesArray[i] = NeuesArray[n]
setze, sagt der Browser mir, dass das Neue Array "kein Objekt oder null" ist.
Ich nehme mal an, dass ich so nicht einfach das Objekt kopiere kann, oder?
Die folgende Nachricht zum Thema stammt von: Gunnar Bittersmann, 30. 07. 2006, 19:24
Hello out there!
»» ErstesArray[i] = NeuesArray[n]
Bei den Namen der Arrays sagt meine Glaskugel, dass du die Zuweisung genau andersrum machen möchtest.
See ya up the road,
Gunnar
--
“Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
Die folgende Nachricht zum Thema stammt von: Andi, 30. 07. 2006, 19:30
»» Hello out there!
»»
»» »» ErstesArray[i] = NeuesArray[n]
»»
»» Bei den Namen der Arrays sagt meine Glaskugel, dass du die Zuweisung genau andersrum machen möchtest.
<aufdemschlauchsteh> Hä? </aufdemschlauchsteh>
»»
»» See ya up the road,
»» Gunnar
Gruß
Andi
Die folgende Nachricht zum Thema stammt von: Thomas Schenkeli, 31. 07. 2006, 10:03
»» »» Hello out there!
»» »»
»» »» »» ErstesArray[i] = NeuesArray[n]
»» »»
»» »» Bei den Namen der Arrays sagt meine Glaskugel, dass du die Zuweisung genau andersrum machen möchtest.
»»
»» <aufdemschlauchsteh> Hä? </aufdemschlauchsteh>
Gunnar meint, dass du versuchst dem ersten, ursprünglichen Array versuchst den Wert des neuen Array hinzuzufügen. Der Code müsste seiner Vermutung nach umgekehrt lauten:
NeuesArray[n] = ErstesArray[i]
Eventuell vesuchst du nämlich mit deinem Code auf eine Element des NeuesArray zuzugreifen, obwohl dieses Array noch leer ist.
Poste doch bitte einmal etwas mehr Code, von der initiierung des ersten Arrays bis zum Versuch die Werte zu kopieren
»» »» See ya up the road,
»» »» Gunnar
»»
»» Gruß
»» Andi
lg
Thomas
Die folgende Nachricht zum Thema stammt von: Andi, 01. 08. 2006, 21:10
Nein, ist schon richtig rum. Hier mal mehr Code:
var divArray = document.getElementsByTagName("div");
var Menuitems;
for (var i=0; i<divArray.length; i++) {
if (divArray[i].className == 'tabmenu' || divArray[i].className == 'tabmenu_active') {
Menuitems[Menuitems.length] = divArray[i];
}
}
Wie gesagt, in Menuitems ist nichts drin...
Die folgende Nachricht zum Thema stammt von: Gunnar Bittersmann, 02. 08. 2006, 01:29
Hello out there!
»» Wie gesagt, in Menuitems ist nichts drin...
Und die Fehlermeldung der JavaScript-Konsole hat dich nicht stutzig gemacht? “Menuitems has no properties” ...
»» var Menuitems;
»» Menuitems[Menuitems.length]
... ja wie auch? Wenn du Menuitems als einfache Variable deklarierst, ist es halt kein Array.
Wenn du das hingegen als Array deklarierst ...var Menuitems = new Array();
See ya up the road,
Gunnar
--
“Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
Die folgende Nachricht zum Thema stammt von: Blaubart, 31. 07. 2006, 10:10
Hallo Andi.
»» »» »» ErstesArray[i] = NeuesArray[n]
»» »»
»» »» Bei den Namen der Arrays sagt meine Glaskugel, dass du die Zuweisung genau andersrum machen möchtest.
»»
»» <aufdemschlauchsteh> Hä? </aufdemschlauchsteh>
Obwohl deine ausführliche Nachfrage kaum verläßliche Schlüsse darauf zuläßt, *was* genau du an Gunnars Antwort nicht verstanden hast, vermute ich, daß es sich dabei nicht um die (deutsche) Sprache handelt...
Die Zuweisung...
alt = neu;
... wird von rechts nach links ausgewertet, d.h. du speicherst in "alt" das, was in "neu" steht:
alt <-- neu
Wie Gunnar aufgrund der Namen deiner Variablen vermutete, möchtest du die Zuweisung aber genau andersherum vornehmen.
--
Once is a mistake, twice is jazz.
© 1998-2006
Impressum, Software: Classic Forum