1UnitedPower: Mehrdimensionales Array verhält sich fraglich

Beitrag lesen

Hakuna matata!

Ich halte sowieso nicht viel von Schleifen, bin also ganz auf deiner Seite was forEach angeht. Wenn man dein Beispiel allerdings mal syntaktisch bereinigt, sieht man schnell, dass das .bind() hier trotz Allem eine Existenzberechtigung hat.

wert.forEach(function (w) {

setTimeout(funktion(w['wert1'], w['wert2'], w['wert3']), 30);
});

  
~~~javascript
wert.forEach(function (w) {  
   setTimeout(function(){funktion(w['wert1'], w['wert2'], w['wert3'])}, 30);  
});

Um die Callback-Funktion muss noch ein closure gewrapt werden, die bind-Methode abstrahiert genau dieses verhalten:

wert.forEach(function (w) {  
   setTimeout(funktion.bind(window,w['wert1'], w['wert2'], w['wert3']), 30);  
});
--
“All right, then, I'll go to hell.” – Huck Finn