function-Anweisung vs. function-Ausdruck

JavaScript besitzt eine function-Anweisung und einen function-Ausdruck. Das ist sehr verwirrend, weil sie genau gleich aussehen. Eine function-Anweisung ist eine Kurzform für eine var-Anweisung mit einem Funktionswert.

Die Anweisung

function foo(  ) {}

bedeutet in etwa das Gleiche wie:

var foo = function foo(  ) {};

Im gesamten Buch verwende ich die zweite Form, weil sie ganz deutlich macht, dass foo eine Variable ist, die einen Funktionswert enthält. Um die Sprache gut nutzen zu können, ist es wichtig zu verstehen, dass Funktionen Werte sind.

function-Anweisungen dienen dem Hochziehen. Das bedeutet, dass eine function, ganz egal wo sie platziert wird, immer an den Anfang des Geltungsbereichs, in dem sie definiert ...

Get Das Beste an JavaScript now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.