Answers:
简单方法:
在命令行中输入:node -p process.versions.v8
努力的方式:
键入node --version
以获取Node.js版本。
查找并打开适当的Node.js版本更改日志。
查找包含的注释V8 to
。
只需运行npm version
(不知道何时可用)
> npm version
{ http_parser: '1.0',
node: '0.10.35',
v8: '3.14.5.9',
ares: '1.9.0-DEV',
uv: '0.10.30',
zlib: '1.2.8',
modules: '11',
openssl: '1.0.1j',
npm: '1.4.28',
xsjs: '0.1.5' }
要检查您的版本,请检查process.versions
REPL中的值。
node -e "console.log(process.versions.v8);"
此外,如果需要,可以将节点与其他版本的V8一起编译。显然,根据选择的版本,此处的结果可能会有很大差异。
cd node-v0.x.x
rm -rf deps/v8
git clone http://github.com/v8/v8.git deps/v8
./configure
make
make install
node -e console.log(process.versions.v8)
;否则不输出任何内容。
只是为了好玩,如果终端中有可用的curl,则以下内容应为您提供v8的版本:
V=`cat /usr/include/node/node_version.h | grep -E '^\#define NODE_(MAJOR|MINOR|PATCH)_VERSION' | sed -e 's/^[^0-9]*//'`; V=`echo $V | sed -e 's/ /\./g'`; URL=https://github.com/joyent/node/raw/v$V/ChangeLog; curl --silent $URL | grep 'Upgrade v8' | head -1 | sed -e 's/^.* //'; unset V; unset URL
例如,在带有node.js 0.4.7的框中,我得到:
3.1.8.10
:)
找到带有节点的已安装v8版本。
$ node
> process.versions.v8
'5.1.281.83'
>
其中,流程对象是全局对象,可提供有关当前Node.js流程的信息并对其进行控制。
如果仅在节点repl中键入process,则会看到有关节点的信息(即节点版本,v8版本,平台,env变量信息等)。
node -pe 'this.process.versions' # all versions
node -pe 'this.process.versions.v8' # v8 version
其他答案非常适合检查您的当前版本。这里还有一个包含所有Node.js版本的表:https : //nodejs.org/en/download/releases/。摘录例如:
Version Date V8 npm NODE_MODULE_VERSION
Node.js 11.0.0 2018-10-23 7.0.276.28 6.4.1 67
Node.js 10.13.0 2018-10-30 6.8.275.32 6.4.1 64
Node.js 10.12.0 2018-10-10 6.8.275.32 6.4.1 64
v8与Node.js捆绑在一起。您可以通过ChangeLog
从node
存储库中查看v8 来查看任何版本的Node.js所使用的v8版本以及何时将其投入生产。这是当前的主服务器(如果从源构建):https :
//github.com/nodejs/node/commits/master/deps/v8/ChangeLog
要查看特定版本的Node.js,请将分支切换到该版本并检查ChangeLog
s文件的历史记录。
node -e 'console.log(process.versions.v8);'