声明命名函数的方式是否重要?

时间:2013-08-01 20:37:00

标签: javascript jquery

我看到这样的命名函数示例:

var clearClick = function() {
    // do something
}

...然后用于绑定:

$("#clear").bind(click, clearClick);

......或者采用“速记”方法:

$("#clear").click(clearClick);

但为什么不使用更“正常”(类似于其他编程语言)的结构如下:

function clearClick() {
    // do something
}

它的工作方式相同,不是吗?以这种传统方式定义函数有什么不利之处吗?以前的方式只是jQuerians炫耀他们的新奇?

2 个答案:

答案 0 :(得分:3)

这可行函数表达式

var clearClick = function() {
    // do something
}

$("#clear").bind(click, clearClick);

这不起作用函数表达式。这个命令很重要。

$("#clear").bind(click, clearClick);

var clearClick = function() {
    // do something
}

但是当您使用function declaration声明您的功能时,顺序无关紧要。 以下语法的另一个优点是函数名称出现在调试器中。

function clearClick() {
    // do something
}

答案 1 :(得分:1)

您可能想要这样做的一个原因是它的工作原理:

var clearClick;
$("#clear").click(clearClick);

clearClick = function() {
    // do something
}

... lots of stuff in here ...

clearClick = function() {
    // do something different
}