unknown: addEventListener soll Javascript objekt aufrufen

Beitrag lesen

Hi,

Funktionen in JavaScript können innerhalb ihres Scopes voraus-referenziert werden.
Variablen (alle) werden voraus-definiert - er hat die Variable meinObjekt in einer vorher deklarierten Funktion verwendet.

möglicherweise verstehe ich dich falsch, aber Variablen kann ich erst ab dem Zeitpunkt ihrer Deklaration benutzen.

Keine Ahnung, ich meine "Hoisting". Hab oben allerdings auch einen Denkfehler gehabt(Er hat die Funktion nach der Zuweisung als Eventhandler deklariert, damit ist die Funktion die Variable die voraus-definiert wurde. Die Variable meinObjekt hat mit der ganzen sache überhaupt nichts zu tun).
Es werden aber alle Variablen im Voraus definiert. Das ist aber nur für Funktionsdeklarationen von Bedeutung, da eine Funktionsdeklaration EIN Statement ist. Also im Gegensatz zu normalen Variablen ist eine Funktionsdeklaration beides in einem Statement, Variablendeklaration UND Zuweisung.
Damit ergibt sich der Unterschied zw. einer Functiondeclaration und einer Functionexpression

  
decl();  
function decl()  
{  
  alert("ok");  
}  

und

  
expr();  
var expr = function()  
{  
  alert("nok");  
}  

Durch "Hoisting" wird das 1. zu

  
function decl()  
{  
  alert("ok");  
}  
decl();  

und das 2. zu

  
var expr = undefined;  
expr();  
expr = function()  
{  
  alert("nok");  
}