Node.js 环境搭建

锲而舍之,朽木不折;锲而不舍,金石可镂。——荀况

前言

Node.js 是支持跨平台的,Linux、MacOS、Windows 等主流操作系统都是支持的,但是推荐大家使用 Linux 或 MacOS 平台,一方面我们的代码将来投产到生产环境也都是基于 Linux 平台的,另一方面 Windows 有时总会产生一些奇怪的问题(可能不是重点,看自己喜好),Windows 环境的同学也可以搭建一个虚拟机环境进行学习,也很不错的!

在学习本节前,对于 Node.js 版本不了解的同学建议先去看下之前笔者写过的另篇内容 Node.js 版本知多少?又该如何选择?,可对 Node.js 版本做一个大概的认知!想要了解 Node.js 更多内容也可去官方网站预览 https://nodejs.org/en/。

哪个工具更好

我想这也是你想问的问题,我能告诉的是 “三兄弟都很不错,各有千秋” 就像 “萝卜白菜各有所爱”,你可能觉得 nvm 用的顺,我可能觉得 n 用着好,他可能觉得 nvs 更方便,本文主要为您讲解各工具是如何完成 Node.js 环境的搭建。

nvm

首先介绍第一种 nvm,Github 地址 https://github.com/nvm-sh/nvm,文档写的也很详细,推荐去阅读,以下为安装步骤:

  • 安装 nvm:wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash
  • 查看所有 Node.js 版本:nvm ls-remote
  • 查看本地 Node.js 版本:nvm ls
  • 安装 Node.js:nvm install v6.9.5
  • 设置系统的默认 Node.js 版本:nvm alias default v6.9.5

验证安装结果

在 Node.js 安装成功之后,我们可以检查它是否正常工作。

打开命令终端,输入以下命令

$ node

之后将出现 Node 提示符,我们写入以下命令,运行查看

console.log("hello world!");   

按 Enter 键

NVM: https://github.com/nvm-sh/nvm

n

n 模块由 TJ Holowaychuk 大神所编写,了得的都知道他是 Node.js 界一位很大的贡献者,其中最为知名的框架(Express、Koa)。n 模块正如它的名字一样,它是很简单的,其设计理念如下所示:

no subshells, no profile setup, no convoluted API, just simple.

以下为安装步骤:

$ curl -L https://git.io/n-install | bash 或者 npm install -g n # 安装模块 n$ n 12 # 安装指定 Node.js 版本

控制台输入 n 列出所有版本,若还没有还安装任何版本,则提示一些帮助命令,我这里安装过因此列出了一些安装过的版本。

$ n

再进一步看些常用命令:

$ n latest # 安装最新版本$ n lts # 安装最新稳定版本$ n rm 8.16.0 12.8.0 # 删除一些版本

N: https://github.com/tj/n

nvs

nvs 是一个跨平台的 Node.js 版本管理工具,本身也是基于 JavaScript 进行开发的,以下为步骤介绍:

安装 nvs 直接在控制台粘贴以下命令即可,我是在 Linux 环境下安装的,在执行以下命令之前,需要先安装 git。

export NVS_HOME="$HOME/.nvs"git clone https://github.com/jasongin/nvs "$NVS_HOME". "$NVS_HOME/nvs.sh" install

列举一些基础常用命令:

$ nvs ls # 列出本地所有版本$ nvs ls-remote # 列出 Node.js 可供下载的版本$ nvs add <version> # 下载一个指定版本$ nvs use [version] # 在当前 shell 中指定版本

NVS:https://github.com/jasongin/nvs

以上分别介绍了三种方法来管理 Node.js 的版本,也很简单,Windows 平台大家可以自行实践,有什么问题可以在评论区进行提问,另外 Node.js 在安装之后同时会伴随着一个另外的东西 NPM 也被安装了,至于 NPM 是什么?且看下篇文章介绍。

本文分享自微信公众号 - Nodejs技术栈(NodejsDeveloper)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-08-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏EffectiveCoding

Java Concurrent CyclicBarrier

CyclicBarrier 是JUC 所提供的比较好用且应用面十分广泛的一个并发工具。 CyclicBarrier 字面意思:循环 屏障,也就是一种循环可使用...

9520
来自专栏点云PCL

kd-tree理论以及在PCL 中的代码的实现

通过雷达,激光扫描,立体摄像机等三维测量设备获取的点云数据,具有数据量大,分布不均匀等特点,作为三维领域中一个重要的数据来源,点云主要是表征目标表面的海量点的集...

11030
来自专栏服务端技术杂谈

接口调用实现请求超时中断,你有几种方法?

在服务化系统中,对于上下游服务的依赖调用往往是通过RPC接口调用实现的,为了系统稳定性,防止被上游服务超时hang死,我们需要对接口调用设置超时,如果在设置的超...

81610
来自专栏R语言交流中心

R语言实现GO分析

我们上一期介绍了如何实现GO分析的可视化,运行了GOplot包自带的数据并且很畅通。然而我们如何才能获取那些可以直接输入的数据表格或者说前期的工作是怎么实现的。...

25920
来自专栏TechBox

Node.js简介

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻...

13120
来自专栏Fundebug

Fundebug后端Node.js插件更新至0.2.0,支持监控Express慢请求

Fundebug是专业的应用异常监控平台,我们Node.js插件fundebug-nodejs可以提供全方位的异常监控,支持Express、Koa以及Hapi框...

10390
来自专栏R语言交流中心

R语言实现KEGG通路富集可视化

用过KEGG的朋友应该都很熟悉里面的通路地图。你是否想过如果自己可以控制通路图将自己的基因绘制在一个通路图中,那么今天给大家介绍一个新推出的Bioconduct...

1.1K10
来自专栏EffectiveCoding

Redis 中List 及 quicklist实现 2

上一篇中看了List的使用方式、quicklist中的各个结构体,这一篇来看看quicklist里面的几个核心函数,quicklistCreate函数、quic...

8850
来自专栏码神联盟

ES | Linux下基于ElasticSearch的head插件安装

wget https://nodejs.org/dist/v10.15.2/node-v10.15.2-linux-x64.tar.xz

91940
来自专栏程序员宇说

[Vue 牛刀小试]:第十五章 - 传统开发模式下的 axios 使用入门

  在没有接触 React、Angular、Vue 这类 MVVM 的前端框架之前,无法抛弃 Jquery 的重要理由,除了优秀的前端 DOM 元素操作性以外,...

9930

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励