Home > Article > Web Front-end > Introduction to the differences in how JS functions are defined_Basic knowledge
There are two ways to define functions in JS:
(1) Typical function declaration
function slide(arguments){ //...code }
(2) Define functions in the form of function expressions
var slide = function(arguments){ //...code }
Although the above two methods are logically equivalent, there are still some small differences:
Difference 1: The function in Example 1 will be loaded into the scope before the code is executed, while in Example 2 it will not be defined until the code is executed to that line;
Difference 2: The function declaration assigns a name to the function, while the function expression creates an anonymous function and then assigns the anonymous function to a variable;
Look at the example below:
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(){},匿名函数
The above introduction to the differences in JS function definition methods is all the content shared by the editor. I hope it can give you a reference, and I hope you will support Script Home more.