javascript - 在 JavaScript 中声明一个没有名字的函数

标签 javascript function object

我是 JavaScript 新手(来自 Java),想了解这个函数

(function (global, factory) {
if (typeof define === 'function' && define.amd) {
    define(['../numeral'], factory);
} else if (typeof module === 'object' && module.exports) {
    factory(require('../numeral'));
} else {
    factory(global.numeral);
}

它来自这个 github 页面 https://github.com/adamwdraper/Numeral-js/blob/master/src/formats/currency.js

我的问题是:为什么没有以 globalfactory 作为参数的函数的名称?

我期望的是这样的:

function myFunction(p1, p2) {
return p1 * p2;   // The function returns the product of p1 and p2
}

在这里,我们有名称 myFunction 但在上面的例子中,我们没有函数的名称。为什么?为什么在 JavaScript 中允许这样做?

最佳答案

是的。它们在 Javascript 中称为匿名函数。

通常这些函数作为回调提供给另一个函数。

或者可以像 Jack 在他的回答中所说的那样立即调用它们。

关于javascript - 在 JavaScript 中声明一个没有名字的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56460787/

相关文章:

javascript - Angular : How can we broadcast promise to different controllers?

c - 哪一个是好的做法 : using block of code in main or making function of same code?

javascript - 在 Javascript 对象上定义方法/函数

javascript - 如何在我的 React 应用程序中导入 JS 库?

javascript - 为什么路由改变时不发出HTTP请求?

Javascript 阻止 post 请求

PHP 从函数内的另一个函数获取值

javascript - 循环遍历对象以获取特定值

JavaScript:深度复制 Image() 对象

javascript - 无法从 Vue.js 中的监视属性访问旧值