Это всего лишь несколько строк из официальных документов node.js.Является ли этот код nodejs круглой ссылкой?
client.on('data', function(data) {
console.log(data.toString());
client.end();
});
Я думаю, что клиентский объект имеет ссылку на обратный вызов, обратный вызов имеет ссылку на замыкание на объект клиента. Это верно? Если да, то почему это рекомендуется?
«клиент» в обратном вызове ссылается на исходный клиент из-за области, поэтому он не может ссылаться на какой-либо другой «клиент», если вы не переопределите его. Это не вызывает каких-либо проблем, поэтому их можно использовать безопасно. Единственный другой способ - передать в качестве аргумента в качестве аргумента (у вас нет контроля над тем, что передает инфраструктура) или определить клиента в другой области, такой как «окно», что может вызвать больше проблем и не имеет никаких улучшений. –