一、区别

  • nvm:是Node.js 版本管理工具。

    也就是说:一个 nvm 可以管理很多 node 版本和 npm 版本。
    这个技术出现的原因, 是由于不同的项目node版本也不同,有的是5.0.1, 有的是6.3.2。 如果node出现版本不对,运行 某个应用时,很可能就会遇到各种莫名其妙的问题 。

  • Node.js:是在项目开发时的所需要的代码库。(内置npm)

    简单的说 Node.js 就是运行在服务端的 JavaScript,是一个基于Chrome JavaScript 运行时建立的一个平台,是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎。V8引擎执行Javascript的速度非常快,性能非常好。

  • npm:是Node.js的包管理工具。

    在安装的 nodejs 的时候,npm 也会跟着一起安装,它是包管理工具。
    npm 管理 nodejs 中的第三方插件。他的作用与Ruby中的 bundler及Java中的maven相同,都是对第三方依赖进行管理的。

二、关系

  • nvm 管理 Node.js 和 npm 的版本

  • npm 可以管理 Node.js 的第三方依赖(或者叫包、模块)

qxnswn.png


【参考内容】: