可能重复:
JavaScript:var functionName = function() {} vs function functionName() {}
在 JavaScript 中,我可以定义一个函数并将其分配给一个变量:
var myVar = function myFunc(){};
或独立定义函数:
function myFunc(){};
第一种方法的用例是什么?
可能重复:
JavaScript:var functionName = function() {} vs function functionName() {}
在 JavaScript 中,我可以定义一个函数并将其分配给一个变量:
var myVar = function myFunc(){};
或独立定义函数:
function myFunc(){};
第一种方法的用例是什么?
声明为变量的函数不会提升到作用域的顶部
function run() {
fn1(); // logs "hi"
fn2(); // error
function fn1 () { console.log("hi"); }
var fn2 = function () { console.log("hi again"); };
}
请参阅此先前的相关答案。JavaScript 中首选命名函数还是匿名函数?
在解析通过它之后,这最终看起来与此类似
function run() {
function fn1 () { console.log("hi"); }
var fn2;
fn1(); // logs "hi"
fn2(); // error
fn2 = function () { console.log("hi again"); };
}