javascript - 为什么要将函数分配给变量而不是声明命名函数?

标签 javascript function variables

我为什么要这样做:

var myfunc = function() { /* code */ };

...

myfunc();

而不是这个:

function myfunc() { /* code */ }

...

myfunc();

使用一个比另一个有什么好处吗?我在不同的地方看到了这两个例子。

最佳答案

据我所知,唯一的区别是匿名函数不能递归调用自身,而命名函数可以。还有第三种类型的结构结合了这两者,即你可以有一个命名函数表达式:

var myfunc = function myfunc() { /* code */ };

关于javascript - 为什么要将函数分配给变量而不是声明命名函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11787747/

相关文章:

javascript - 如何在不重新提交表单的情况下检测单选按钮的值变化?

javascript - 与函数和变量的多重Knockout绑定(bind)

javascript - 如何将函数添加到javascript中的特定字符串

C中的变量之间的复制

javascript - 从 Wordpress REST API 获取所有对象的列表

javascript - 如何创建一组下拉列表,其中列表会随着您的选择而减少?

c++ - 尝试分配函数指针时获取 "Void value not ignored as it ought to be"

r - 是否有内置函数 "none"?

javascript - 如何在我的 HTML 中使用来自外部 .js 文件的变量?

c++ - 来自 unsigned_int64 的意外行为;