NPM 和 NVM
从字面上面就可以理解上面 2 个定义的不同。
如果要直接解释就是:
- Node.js:NodeJS 项目开发需要使用的解释器
- npm:随着 Node.js 一同安装的包管理器(主要用来管理包)。
- nvm:需要单独安装,主要对项目使用的 Node.js 解释器进行管理。
用土话说,因为有 P,所以管理包(Package),因为有 V,所以管理版本(V)。
但是 Node.js 又不自带版本管理器,因此需要一个其他的一个程序来管理,这个程序是需要安装的,这就是为什么 nvm 需要单独安装的原因了。
来源就是狗日的 Node.js 的版本迭代速度太快,加上 JS 使用的包管理器没有 maven 那么优雅,自然就会导致一套系统中部署不同的 Node.js 版本,更加讨厌的是各个版本直接还没有办法直接兼容。
那就需要开发人员不同的切换版本,nvm 就为了满足这个需求而存在的。