Es gibt zwei Möglichkeiten, Funktionen in JS zu definieren:
(1) Typische Funktionsdeklaration
function slide(arguments){ //...code }
(2) Definieren Sie Funktionen in Form von Funktionsausdrücken
var slide = function(arguments){ //...code }
Obwohl die beiden oben genannten Methoden logisch gleichwertig sind, gibt es dennoch einige kleine Unterschiede:
Unterschied 1: Die Funktion in Beispiel 1 wird in den Bereich geladen, bevor der Code ausgeführt wird, während sie in Beispiel 2 erst definiert wird, wenn der Code in dieser Zeile ausgeführt wird;
Unterschied 2: Die Funktionsdeklaration weist der Funktion einen Namen zu, während der Funktionsausdruck eine anonyme Funktion erstellt und diese dann einer Variablen
zuweist
Schauen Sie sich das Beispiel unten an:
function factorial(num){ if(num<=1){ return 1; } else { return num*arguments.callee(num-1); } } var anotherFactorial = factorial; factorial = null; console.log(anotherFactorial);//输出factorial(){},有函数名 若是以函数表达式定义 var factorial = function(num){ //...code } //...code console.log(anotherFactorial);//输出function(){},匿名函数