我了解一个函数及其工作原理。但是,我不确定以下几点:
function(msg) { alert(msg); }
如果没有分配给任何东西,它是如何调用的?
我对此比较熟悉:
function alert(msg) { // set it
alert(msg);
}
alert('hello!'); //call it
最佳答案
您可以将使用此语法定义的函数分配给变量,就像其他对象一样:
var myAlert = function(msg) { alert(msg); };
myAlert("hello!");
匿名函数最常见的用例是作为高阶函数 - 当您提供一个函数作为另一个函数的参数时。一个常见的示例是 AJAX 请求 - 您提供一个在请求完成时执行的回调函数。使用 jQuery,您可以编写:
$.get('/someurl', myAlert);
当 /someurl
处的资源响应时,jQuery 将执行 myAlert
。
关于javascript - 使用 JavaScript 理解匿名函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20229680/