Javascript 为什么我需要将express server实例作为参数传递给Node.JS中的http模块?

Javascript 为什么我需要将express server实例作为参数传递给Node.JS中的http模块?,javascript,node.js,express,socket.io,Javascript,Node.js,Express,Socket.io,我目前正在学习Node.JS、Express.JS和Socket.IO。到目前为止,我看到的教程使用了一系列复杂的代码来初始化这些模块: var express = require("express"); var app = express(); var server = require("http").createServer(app); var io = require("socket.io")(server); 为什么变量“app”作为参数传递给变量“server”,而服务器作为参数传递

我目前正在学习Node.JS、Express.JS和Socket.IO。到目前为止,我看到的教程使用了一系列复杂的代码来初始化这些模块:

var express = require("express");
var app = express();
var server = require("http").createServer(app);
var io = require("socket.io")(server);
为什么变量“app”作为参数传递给变量“server”,而服务器作为参数传递给“io”

提前感谢。

express(不是node.js的一部分)作为请求侦听器实现,您可以使用它启动node.js提供的http服务器实现

检查文档: