为什么在尝试在以下方法中找到有关node.js中http模块的更多信息时会得到不同的结果?
如果我输入节点REPL然后打印http模块的内容,即如果我运行
html,body{
height: 100%
}
我获得了http对象的所有细节:
me@mymachine:~> node
> console.log(http)
如果我编写一个名为 script.js 的脚本文件,其中包含以下单行
{ IncomingMessage:
{ [Function: IncomingMessage]
super_:
{
...
并通过运行
执行它console.log(http);
我得到了
node script.js
我原本期望两种情况都以相同的方式运行 - http模块是否预先加载。为什么会有区别?我在这里弄错了什么?
我以为我可以修复'这是通过运行(在版本2中)预加载模块http
ReferenceError: http is not defined
不应该预加载模块http,从而避免引用错误吗?
期待您的投入!
答案 0 :(得分:2)
Repl默认需要所有标准的Node.js核心模块。
https://nodejs.org/api/repl.html#repl_accessing_core_node_js_modules