相关疑难解决方法(0)

var functionName = function(){} vs function functionName(){}

我最近开始维护其他人的JavaScript代码.我正在修复错误,添加功能,并尝试整理代码并使其更加一致.

以前的开发人员使用两种声明函数的方法,如果背后有原因,我就无法解决.

这两种方式是:

var functionOne = function() {
    // Some code
};
Run Code Online (Sandbox Code Playgroud)
function functionTwo() {
    // Some code
}
Run Code Online (Sandbox Code Playgroud)

使用这两种不同方法的原因是什么?每种方法的优缺点是什么?有一种方法可以通过一种方法完成,而另一种方法无法完成吗?

javascript syntax idioms function

6645
推荐指数
32
解决办法
98万
查看次数

JavaScript函数声明和评估顺序

为什么这些例子中的第一个不起作用,但所有其他例子都不起作用?

// 1 - does not work
(function() {
setTimeout(someFunction1, 10);
var someFunction1 = function() { alert('here1'); };
})();

// 2
(function() {
setTimeout(someFunction2, 10);
function someFunction2() { alert('here2'); }
})();

// 3
(function() {
setTimeout(function() { someFunction3(); }, 10);
var someFunction3 = function() { alert('here3'); };
})();

// 4
(function() {
setTimeout(function() { someFunction4(); }, 10);
function someFunction4() { alert('here4'); }
})();
Run Code Online (Sandbox Code Playgroud)

javascript function-declaration

79
推荐指数
1
解决办法
2万
查看次数

如何在Javascript中测试函数的相等性

如何才能对bar和foo的平等进行积极的测试?

 foo = function() {
    a = 1;
 }; 

 bar = function() {
    a = 1;
 }; 

 if (foo === bar) alert('baz');
 if (foo == bar) alert('qux');
Run Code Online (Sandbox Code Playgroud)

以上条件都是错误的.

更新 - 根据要求我需要测试功能相等性的原因

我正在构建一个发布/订阅框架,需要传递回调以取消订阅主题.

请看小提琴:http://jsfiddle.net/jamiefearon/hecMS/47/

javascript equality function

22
推荐指数
3
解决办法
2万
查看次数