• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Bilder in ein Div laden

Ja - stimmt.

Und du hast Recht: der Weg, mit dem man den Variablenwert erhalten kann ist in JS nicht wirklich schön - aber auch nicht wirklich schwer:
Code:
for (var i = 0; i < 5; i += 1){
	window.setTimeout(
		(
			function(i){
				return function(){
					alert(i);
				};
			}(i)
		),
		i*2000
	);
}
 
Zuletzt bearbeitet:
... die dann die eigentliche Funktionsreferenz zurückgibt. Da sind zwei anonyme Funktionen im Spiel (hab' das oben mal etwas schöner formatiert): eine stellt den Scope bereit und die andere wird dann im Timeout ausgeführt.
 
Genau dewegen versuche ich möglichst viel mit .forEach zu arbeiten. Da hat man automatisch einen separaten Scope:
Code:
[0, 1, 2, 3, 4].forEach(function(i){
	window.setTimeout(
		function(){
			alert(i);
		},
		i*2000
	);
});
- ist natürlich nicht immer machbar.
 
Zurück
Oben