我的 nodejs/express 服务器类中的一个函数有一个小问题。
我有以下功能:
@resolveServers = (url, servers, resolved) ->
result = []
treatServer(url, server, (serverObject) ->
result.push serverObject
resolved result if result.length is servers.length
) for server in servers
而且由于处理服务器功能可能很疯狂,并且正如我的这个问题所暗示的那样,我正在考虑为此使用async each。
所以我在这里:
@resolveServers = (url, servers, resolved) ->
result = []
async.each(servers, treatServer(url, server, (serverObject) ->
result.push serverObject
resolved result if result.length is servers.length
), (err) ->
if err
console.log next err
)
我目前收到以下错误:
ReferenceError: server is not defined
TreatServer 函数需要服务器数组的 url 和服务器。但我不知道如何获取每个服务器实例,并将其传递给treatServer 函数。
知道我做错了什么吗?
已经谢谢了。
更新:我有点失望,因为我完全没有使用异步。我使用的函数大约需要 6500 毫秒,而异步函数是相同的。我猜咖啡脚本的每个功能都做得很好。
更新:经过进一步测试,我发现异步功能较慢。真的很奇怪。