Unterschied zwischen var functionName = function() {} und function functionName() {} in JavaScript
Hallo Kollegen! Ich bin ein Anfänger-Frontend-Entwickler und bin auf Verwirrung gestoßen. In verschiedenen Projekten und Tutorials sehe ich zwei Arten, Funktionen zu deklarieren:
```javascript
// Methode 1: Function Expression
var myFunc = function() {
console.log("Hello from expression!");
};
// Methode 2: Function Declaration
function myFunc() {
console.log("Hello from declaration!");
}
```
Auf den ersten Blick machen sie dasselbe. Aber als ich anfing, komplexeren Code zu schreiben, bemerkte ich ein seltsames Verhalten. Wenn ich zum Beispiel eine Funktion vor ihrer Deklaration aufrufe, funktioniert eine Methode, während die andere einen Fehler ausgibt:
```javascript
// Das funktioniert
sayHello(); // Gibt "Hello!" aus
function sayHello() {
console.log("Hello!");
}
// Das gibt einen Fehler aus
s