gpt4 book ai didi

node.js - 试图理解 Node createServer 回调

转载 作者:搜寻专家 更新时间:2023-10-31 22:52:53 25 4
gpt4 key购买 nike

使用 Node.js hello world 示例:

var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
console.log('Server running at http://127.0.0.1:1337/');

我试图找到 http.js 中的 createServer 在哪里“寻找”一个函数,然后将两个对象传递给它(上面的对象名为“req”和“res”。我已经搜索了 http.js 和我唯一发现的是:

exports.createServer = function(requestListener) {
return new Server(requestListener);
};

是不是匿名函数的意思:

function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}

...作为“requestListener”传递并...

return new Server(requestListener);

...req 和 res 对象是从哪里传回的?

最佳答案

是的。在 Javascript 中,函数本身就是可以分配给“对象”的“值”。由于您可以将对象传递给另一个函数,因此您可以将函数本身作为对象传递。

requestListener 是参数 createServer 命名为 requestListener 用于调用 Server 构造函数

你也可以在 ruby​​ 中看到这一点,你可以在其中调用一个函数,同时将要在 do block 中执行的代码作为参数传递给它。

关于node.js - 试图理解 Node createServer 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15995443/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com