这种差异重要吗?它是:
- iterator = 迭代一组数据结构的抽象
- iteratee = 正在迭代的实际数据结构
我正在阅读 async 的文档,发现“iteratee”随处可见。好吧,它不执行实际迭代,因此 iterator 不是正确的名称。但根据我对上面“iteratee”的理解,它也不应该是一个函数(在我的脑海中,iteratee = 数据结构 - 如果有什么东西在进行迭代,那就是 iterator 函数)。
如果您不熟悉 async
的 iteratee:它是一个函数,它接受2个参数,即您正在迭代的集合中的下一个值和一个函数,该函数接受一个错误值和一个结果值。您应该在 iteratee 中执行某些异步操作,然后调用其第二个参数(function(err, result))以返回错误或结果。
(然后,您将向您正在进行的任何操作(map、filter 等)提供另一个回调作为参数,以处理调用 iteratee 在所有初始集合元素上的异步操作的结果)。
只是好奇:使用“iteratee”这个名称是否正确?