javascript - 我可以稍后调用匿名函数吗

标签 javascript anonymous-function

我正在用 JavaScript 开发一个函数,我想知道以后是否可以调用匿名函数:

code
more code

(function() {
alert('Hello World!');
})();
more code
(function() {
alert('Goodbye World!');
})();

//call to the first anonymous function
//call to the first anonymous function 

是否可以调用匿名函数? 我想可能有一个包含所有函数的数组?

最佳答案

由于函数是“一等公民”,因此您可以将它们分配给变量,或者将它们放入数组/对象中,就像任何其他变量一样,无论它们是否是匿名的。

因此,您必须将匿名函数分配给变量(或将其放入数组中),以便以后能够通过某种方式引用它。

此外,您不会立即执行它,而是稍后执行它。

var anon1 = (function(){
    alert("anon1");
}); // <-- no () so it doesn't execute now.

// code code

anon1(); // <-- execute now

// ----- or -------
var myFuncs = [];

myFuncs.push( (function(){
    alert("in myFuncs");
}) ); // <-- not executing it here.

// code code

myFuncs[0](); // <-- execute now

关于javascript - 我可以稍后调用匿名函数吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34941904/

相关文章:

javascript - jQuery SlideUp 而同级 div SlideDown

matlab - 使用 cellfun 进行条件元素替换

javascript - 如何在匿名函数调用中获取外循环索引?

javascript - 匿名函数与普通函数

angularjs - 我可以将匿名函数或代码作为指令中的属性吗?

Javascript - 如何将匿名方法作为变量调用并访问其属性和方法?

javascript - 导出异步等待变量并在 JS 中完成 "awaiting"后将其导入另一个文件

javascript - Three.js 从 CanvasRenderer 到 WebGLRenderer

javascript - 在没有 JavaScript 的情况下将灵活的容器设置为图像的宽度和高度

javascript - 在某些图形编辑器中使用 Html5/Javascript 图形