You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js中cluster.isPrimary返回undefined而isMaster正常返回true的原因是什么?

问题出现的核心原因

你遇到的这个情况本质是Node.js版本不匹配导致的,具体说明如下:

  • cluster.isPrimary 是 Node.js v16.0.0 版本才正式新增的属性,同时官方从该版本开始将原有的cluster.isMaster标记为废弃状态。此外该属性也被向后移植到了v14.x的维护分支,v14.18.0及更高的v14版本也支持该属性。
  • 如果你当前使用的Node.js版本低于v14.18.0,或是v15.x全版本、v13及更早的版本,运行环境中根本不存在isPrimary属性,调用时自然会返回undefined;而isMaster是更早版本就存在的属性,所以可以正常返回布尔值。
解决方案
  • 首先执行node -v命令查看当前Node.js版本
  • 如果不需要兼容低版本环境,直接将Node.js升级到v14.18.0+、v16.0.0+或是更高的LTS版本,即可正常使用isPrimary属性
  • 如果需要兼容新旧版本的Node.js,可以写兼容判断逻辑兜底:
const cluster = require('cluster')
const isPrimary = cluster.isPrimary ?? cluster.isMaster

内容的提问来源于stack exchange,提问作者bahejam379

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 17:54:05