主流javaScript包管理器为npm、yarn和pnpm:npm开箱即用兼容性强;Yarn v1强调速度与确定性,v2+采用PnP模式适配成本高;pnpm以硬链接节省空间、安装更快,monorepo场景最优。

javascript 主流包管理器就三个:npm、Yarn 和 pnpm。npm 是 node.js 自带的默认工具,最通用;Yarn 由 facebook 推出,强调速度与确定性;pnpm 则以极省空间和超快安装见长,特别适合大型项目或 monorepo。
常用包管理器核心特点
● npm:开箱即用,生态兼容性最强,适合入门或对工具链要求不高的项目。
● Yarn(v1):并行下载 + 本地缓存 + yarn.lock 锁死依赖,比老版 npm 更稳更快;Yarn v2+(Berry)改用 PnP 模式,但需适配成本,目前使用较少。
● pnpm:用硬链接 + 符号链接复用包文件,node_modules 体积通常只有 npm 的 1/3,安装速度也明显更快,且天然支持 workspaces,monorepo 场景下体验最佳。
yarn 的基本使用流程
先全局装 Yarn(如果没装过):
npm install -g yarn
进项目后常用操作:
● 初始化项目:yarn init -y
● 安装生产依赖:yarn add lodash
● 安装开发依赖:yarn add jest –dev(或 -D)
● 运行脚本:yarn run build(等价于 yarn build)
● 升级依赖:yarn upgrade lodash 或 yarn upgrade-interactive
pnpm 的基本使用流程
全局安装 pnpm:
npm install -g pnpm
项目内操作更轻量,命令风格和 npm/yarn 高度一致:
● 初始化:pnpm init -y
● 装依赖:pnpm add axios(自动写入 dependencies)
● 装开发依赖:pnpm add eslint –save-dev(或 -D)
● 运行脚本:pnpm run dev
● 清理未用依赖:pnpm prune(会删掉 package.json 里没声明但 node_modules 里存在的包)
选哪个?看这几条实际判断
● 新团队 / 新项目想一步到位省心省空间 → 直接上 pnpm
● 要对接老旧 CI 工具、或某些插件只认扁平 node_modules → 优先选 npm
● 已有 Yarn v1 项目、团队熟悉其 workflow → 继续用,没必要强切
● 做 monorepo(比如用 Turborepo、Nx)→ pnpm workspaces 配置最简、性能最优
基本上就这些。不用纠结“必须统一”,不同项目按需选,只要团队内部约定清楚、CI 流程匹配就行。