您如何看待哪一个是更好,更快,更好的声明函数的解决方案?
首先:
(var) myFunction = function(){
//Stuff to do
};
或第二:
function myFunction() {
//Stuff to do
};
两者都适用于JavaScript和JQuery。但你觉得哪个更好?
答案 0 :(得分:7)
请注意,两者的行为都不同 - function
语句定义的函数是在代码执行之前定义的。
typeof f; //returns 'undefined'
var f = function() {};
但
typeof f; //returns 'function'
function f() {}
(您是否也注意到我在哪里以及我没有使用分号?)
此外,块中禁止使用函数语句(第二个选项)。未定义以下内容应如何工作:
if (false) {
function f(){}
}
因此,在某些浏览器中,函数f
可能会在不合逻辑的情况下被声明。但是,允许执行以下操作:
var f;
if (some expr) {
f = function() {};
}
下次在提问之前更好地搜索var functionName = function() {} vs function functionName() {}