javascript - 使用 JavaScript 理解匿名函数

标签 javascript jquery

我了解一个函数及其工作原理。但是,我不确定以下几点:

 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/

相关文章:

javascript - jQuery UI draggable scrollSpeed 的单位是什么?

jquery - 提供多个 Base64 图像下载

Javascript/AJAX 操作无法在 @foreach 循环中的每个实例上运行 (MVC C#)

javascript - 选择.js : Add dynamic data into the select option

javascript - 将对象转换为 typescript 中的模型

javascript - jqGrid FilterToolbar 具有最有效的日期范围选择器

javascript - 使用复选框隐藏我的数据的问题

jquery - DataTables:如果标题中有复选框和弹出控件,如何避免列排序?

jquery - 带有 jQ​​uery 的 HTML5 - e.offsetX 在 Firefox 中未定义

javascript - 将负的 Python marshal int 重新组装成 Javascript 数字