如何通过JS函数获取当前运行环境的Node.js版本?
获取当前Node.js运行版本的JS实现方案
Node.js 全局暴露的 process 内置模块直接提供了对应版本信息,不需要额外执行子进程调用 node -v 命令,实现成本极低且性能更高。
最简实现(返回结果和node -v完全一致)
function getNodeRuntimeVersion() { // process.version 返回的字符串默认带v前缀,和命令行执行node -v的输出完全相同 return process.version; } // 调用示例 console.log(getNodeRuntimeVersion()); // 输出样例:v18.19.0、v20.11.0等
扩展实现(同时返回结构化的版本号)
如果需要拆分主版本、次版本、修订号,可以用以下写法:
function getNodeVersionInfo() { // process.versions.node 返回不带v前缀的版本字符串 const [major, minor, patch] = process.versions.node.split('.').map(Number); return { // 拼接v前缀,和node -v输出对齐 fullVersion: `v${process.versions.node}`, majorVersion: major, minorVersion: minor, patchVersion: patch }; } // 调用示例 console.log(getNodeVersionInfo().fullVersion); // 输出样例:v20.11.0 console.log(getNodeVersionInfo().majorVersion); // 输出样例:20
注意:上述两个方法的返回结果和命令行执行
node -v的结果完全一致,无需处理子进程的异步回调、跨平台兼容性等额外问题。
内容的提问来源于stack exchange,提问作者Didier68
相关产品推荐
相关产品推荐

