javascript - 了解匿名函数中的参数(回调示例)

标签 javascript callback

<分区>

有一个example in JavaScriptIsSexy对于一个简单的回调,我想更好地理解它:

var friends = ["Mike", "Stacy", "Andy", "Rick"];

friends.forEach(function (eachName, index){
console.log(index + 1 + ". " + eachName); // 1. Mike, 2. Stacy, 3. Andy, 4. Rick​
});

在这种情况下,如何将参数eachNameindex 分别理解为数组的元素(人名作为字符串)和索引号?是否必须通过此处未显示的调用中的参数来指定,但如果您希望在评论中显示输出,则可以预期?

最佳答案

因为这就是 forEach 函数的定义方式,根据 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach :

callback is invoked with three arguments:

  • the element value
  • the element index
  • the array being traversed

很明显,名称eachNameindex 本身并没有什么特别的含义。他们的意思是纯粹的位置。您可以随意调用它们并使用它们。无论您输入什么名称,都将用作元素值的参数名称,第二个作为元素索引,第三个作为数组。

即使您还没有使用它,您也可以声明和使用第三个参数 - 整个数组 - 如果需要的话。同样,如果你不关心索引,你也不需要定义它。

关于javascript - 了解匿名函数中的参数(回调示例),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27369453/

相关文章:

javascript - 通过 HTTP 回调函数进行谷歌地理编码?

javascript - D3.js - 检测交叉区域

javascript - 使用 json 从数据库检索纬度经度到 php 页面

javascript - 如何使用 javascript 将 -1 转换为 1?

c++ - GStreamer 似乎没有调用我的回调

javascript - MyObject.prototype.reduce 回调无法访问数组方法

javascript - 在提交按钮上注册单击事件时,表单输入中所需的属性不起作用

javascript - 插入数组

javascript - jQuery 函数 : pass callback functions as optional arguments to another function

使用 Emscripten 在 C 代码中回调 javascript 函数