n
n 是一个需要全局安装的 npm package。
这意味着,我们在使用 n 管理 node 版本前,首先需要一个 node 环境。通过 Homebrew 或官网下载 pkg 来安装 node,然后可以使用 n 来安装不同版本的 node。
在安装的时候,n 会先将指定版本的 node 存储下来,然后将其复制到/usr/local/bin。
由于 n 会操作到非用户目录,所以需要加 sudo 来执行命令。
n 有可能在切换了 node 版本后发生全局模块执行出错的问题。
nvm
nvm 是一个独立软件包,需要单独使用它的安装逻辑。
在使用 nvm 安装 node 的时候,nvm 将不同的 node 版本存储到 ~/.nvm// 下,然后修改 $PATH,将指定版本的 node 路径加入,这样我们调用的 node 命令即是使用指定版本的 node。
nvm 的全局模块存在于各自版本的沙箱中,切换版本后需要重新安装,不同版本间也不存在任何冲突。
nvm 不支持 Windows。