如何在Node.js目录下找到内置模块

时间:2016-01-15 14:55:32

标签: javascript node.js

Node.js有一个内置模块列表,例如

os, path

我知道这些模块被编译成二进制文件。 但是,在安装了Node.js之后,我找不到Node.js目录下的模块。

有人知道模块的位置吗?

2 个答案:

答案 0 :(得分:1)

你是正确的,因为它们被编译成二进制文件 - 就像JavaScript一样。这可以通过单独运行https://nodejs.org/中的node二进制文件来证明 - 所有标准库都可用。

以下是二进制文件中(非连续的)JavaScript的证据:

$ strings $(command -v node) | grep -E '\b(os|path)\b' 
...<cut>
const path = require
('path');
const os = require('os');
      historyPath = path.join(os.homedir(), '.node_repl_history');
    const historyData = repl.history.join(os.EOL);
        'a valid, user-writable path to enable.\n'
        err.path = self.spawnfile;
  this.path = null;
// Special case for a simple path URL
// are the ones that are *expected* to be seen, so we fast-path them.
    // Try fast path regexp
      this.path = rest;
  // resolution will treat //foo/bar as host=foo,path=bar because that's
    // http://a@b?@c => user:a host:b path:/?@c
      // http://a@b/c@d => host:b auth:a path:/c@d
    this.path = p + s;

答案 1 :(得分:0)

您可以使用以下命令在node.js中获取内置模块

require('repl')._builtinLibs