正在为某个活动添加回调吗?像这样?
Client.prototype.send = function(data, cb) {
// convert json to string
data = JSON.stringify(data)
this.client.write(data)
// wait for the response of this request
this.client.on('data', function(data) {
var request = JSON.parse(data)
// return response as callback
if (request.type === data.type) {
cb(request)
}
})
}
然后调用如:
// send request and wait for reply
client.send(data, function(response) {
// do stuff to reply/response
// this executes +1 times for every sent request should only do 1 request 1 response
console.log(response)
})
每次发出相同类型的事件时,它都会进行回调吗? 这会让性能受损吗?
答案 0 :(得分:1)
你问了几个问题,让我试着按顺序回答。
将事件回调添加好吗?
当然,如果你想在一个事件之后调用一个函数,为什么不呢?
每次发出相同类型的事件时,它都会进行回调吗?
编写文字的方式,只有在cb
request.type === data.type
这是否会影响性能?
这取决于。
通过添加一个有条件地调用的函数的参数,在函数未被调用的情况下,您的性能确实不会有任何明显差异。否则,它取决于回调函数的性能。
在任何具有合理回调函数的情况下,我都不认为它会导致性能问题。