Javascript 这段代码中发生了什么?

Javascript 这段代码中发生了什么?,javascript,node.js,Javascript,Node.js,有人能告诉我这里发生了什么吗?我只知道它需要一些核心模块 var inherits = require('util').inherits; var express = require('express')(); util模块导出了一个对象,该对象在继承项下包含一个函数(可能包括其他函数): exports = { inherits: function() ... } 另一方面,express模块直接导出了一个完整的函数,该函数立即被调用,结果被分配给变量express module.

有人能告诉我这里发生了什么吗?我只知道它需要一些核心模块

var inherits = require('util').inherits;
var express = require('express')();

util
模块导出了一个对象,该对象在
继承项下包含一个函数(可能包括其他函数):

exports = {
    inherits: function() ...
}
另一方面,
express
模块直接导出了一个完整的函数,该函数立即被调用,结果被分配给变量
express

module.exports = exports = function() {
    return ...
}
很可能函数还返回了一个包含函数键/值对的对象,就像从普通的
exports
对象得到的一样


另请参见

,它正是这样做的。不过,第二个模块会立即执行。