Javascript 节点-查看在require()期间使用的包的版本?

Javascript 节点-查看在require()期间使用的包的版本?,javascript,node.js,npm,dependency-management,Javascript,Node.js,Npm,Dependency Management,我有一个没有package.json(我正在尝试修复)的节点模块。该软件包使用cheerio和superagent: var log = console.log.bind(console), superagent = require('superagent'), cheerio = require('cheerio'); 这些依赖项从父项目或全局模块中拉入我如何确切地知道加载的是哪个版本的软件包?npm list用于本地软件包,或npm list-g用于全局安装的软件包 结果应

我有一个没有
package.json
(我正在尝试修复)的节点模块。该软件包使用
cheerio
superagent

var log = console.log.bind(console),
    superagent = require('superagent'),
    cheerio = require('cheerio');

这些依赖项从父项目或全局模块中拉入我如何确切地知道加载的是哪个版本的软件包?

npm list
用于本地软件包,或
npm list-g
用于全局安装的软件包

结果应该是这样的(package@version):


您可以通过
npm list

直接知道软件包名称的版本,只需要软件包即可

var package = require('supertest/package.json');
console.log(package.version);

我知道npm ls。然而,npm ls似乎关注的是安装了什么(请参阅),而不是将加载什么。一种快速简便的方法是通过package.json文件进行验证。你为什么不用它?并验证本地nistalled包是否是正在加载的包。我打算创建一个package.json我只想知道首先要依赖哪个版本的包!我不太清楚你的意思。你是对的。对不起,我没有意识到你可能需要一个使用这种语法的包(而不是文件)。你的答案很好!您可以这样要求包中的每个文件。这就是您也可以仅导入部分模块的方式。