Antwort an „Robert B.“ verfassen

Moin Rolf,

Schlimmer noch - das function-Statement erzeugt keinen const-Wert, sondern eher einen var- oder let-Wert:

function foo() { alert("Foo1!"); }
foo = function() { alert("Uups!"); };
function foo() { alert("Foo2!"); }
foo();

gibt Uups! aus. Die beiden function-Statements werden nach oben gehoben (hoisting), d.h. die Zuweisung an foo erfolgt de facto hinter den beiden function statements.

Die Firefox-JavaScript-Konsole sagt, dass eine var erzeugt wird:

function foo1() { alert("foo1");}
const foo1 = function() { alert("const");};
// Uncaught SyntaxError: redeclaration of var foo1

Die Funktionsreferenz als const zu deklarieren, schlägt auch in der umgekehrten Reihenfolge korrekt fehlt:

const foo = function() { alert('Const');};
function foo() { alert("foo1");}
// Uncaught SyntaxError: redeclaration of const foo

Viele Grüße
Robert

freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar
freiwillig, öffentlich sichtbar
?0

Vorschau

Schlagwort-Vorschläge

klicken, um das Schlagwort hinzuzufügen
  • keine Vorschläge verfügbar

ausgewählte Schlagwörter

klicken, um ein ausgewähltes Schlagwort zu entfernen
  • javascript

Die Identität in einem Cookie zu speichern erlaubt es Ihnen, Ihre Beiträge zu editieren. Außerdem müssen Sie dann bei neuen Beiträgen nicht mehr die Felder Name, E-Mail und Homepage ausfüllen.