关于NODE

401 阅读5分钟

什么是 node

  • 一、 node.js

    1. node.js 是一个基于 Chrome V8 的运行时环境

      在浏览器里面,之所以能运行 js 代码,是因为浏览器都有一个 “引擎”,专门来解析 js 代码

      而 node.js 就是把这个引擎单独拿出来,当作一个 “软件” 安装到我们的电脑里

      那么我们就不需要借助浏览器,就可以用我们的电脑来运行 js 代码

      Chrome V8 是目前比较先进的解析引擎,也是 谷歌浏览器 使用的解析引擎

    2. 使用 JavaScript 语言来进行后台开发

      node.js 就是使用 JavaScript 这个语言来进行后端开发

      也就是说是使用 js 来书写服务端代码

    3. node.js 是依靠事件驱动的

      因为 js 是事件驱动语言,node.js 又是使用的 js 语言,所以 node.js 也是事件驱动的

      我们的 js 有一个叫做 EventLoop(事件轮询)的机制,利用这个可以高效而简洁的进行开发

      最简单的说其就是我们的异步执行代码的机制

    4. 非阻塞 I/O

      I: input 表示输入流

      O: output 表示输出流

      非阻塞 I/O 也叫做 异步 I/O

      就是利用了 js 的异步执行机制

      把输入和输出变成一个异步行为,那么对于高并发的时候,是很好的一个处理方法

为什么要学习 node

  • 对于我们前端学习 node.js可以做什么

    1. 了解后端开发的工作过程

      学习完 node.js 以后,我们就能了解到前后台交互的整个过程

      能理解在一个项目里面,前端都做了什么,后端都做了什么

      在出现一些错误的时候,可以通过一些错误信息快速捕获到错误出现在哪里

      我们自己的错误我们改,后端的错误,我们和后端交流让他们改

      避免因为不了解错误出现在哪里,而耽误开发进度

    2. 书写 api 接口

      我们可以在自己写一些项目的时候,没有后端人员的情况下

      自己书写后端代码(当然一般不需要)

    3. 全栈

      我们想要进步成为一个 全栈工程师,那么必须要经历的一步就是后端的学习

      之所以学习 node.js,就是因为他还是使用 js 语言

      对于我们来说,相对学习成本就要低一些,不需要语法上的切换

在哪学习 node

环境配置

  • 学习 node.js 我们先要会进行环境的配置
  • 我们要知道怎么在自己的电脑里面让 node 可以运行起来

node 安装

  • 去官网直接进行下载
  • 下载好以后直接双击安装,一直 next 就可以了
  • 安装完毕以后,我们打开命令行(终端)
    • $ node --version
    • 能出现版本号表示安装成功

node 相关版本介绍

  • node.js 到目前为止已经有很多的版本了
  • 偶数的版本,比如: x.6.x / x.8.x / x.4.x 表示稳定版本
  • 奇数的版本,比如: x.3.x / x.11.x / x.9.x 表示非稳定版本
  • LTS(Long Term Support): 表示长期支持的版
  • LTS和Current的区别

node 更新版本

  • 如果你的 node 版本是比较以前的,或者以后你想更新一下你 的node 的版本
  • 可以直接去官网下载一个新的 node 安装包
  • 覆盖安装就可以
  • 我们覆盖安装的时候,只能用新版本替换旧版本,不能用旧版本替换新版本

node 更新版本注意

  • 你更新版本以后,有一些你在之前版本下安装的全局包需要重新安装
  • 不能向之前的版本回退
  • 不能在多个版本之间切换(node 只能安装一个版本在电脑上)

npm 安装

  • npm 不需要我们单独安装,会在安装 node 的时候自动帮我们安装
  • npmnode.js 的包管理工具,是全球最大的开源库生态系统
  • 也就是帮我们下载第三方依赖使用的一个工具
  • 打开命令行(终端)输入指令
    • $ npm --version
    • 出现版本号,表示 npm 安装成功,可以正常使用

npm 版本更新

  • 安装 node 的时候,会默认安装 npm 的最新稳定版本

  • 如果你以后想单独更新 npm 的时候,不需要重新安装 node

  • 我们直接使用 npm 就可以把 npm 更新了

  • 使用指令

    # windows 操作系统
    $ npm install --global npm
    # OS 操作系统
    $ sudo npm install --global npm
    

npm 插件官网

  • npm 上有很多的插件
  • 我们需要的时候可以直接下载就可以
  • npm插件官网
  • 对于某一个插件,如果你不是很了解它的用法,也可以直接去 npm 官网搜索
  • 会有对应的说明文档

nvm 安装

  • 因为我们的 node 再一个电脑上只能安装一个版本
  • 但是在开发过程中,有的时候需要再多个版本下进行测试
  • 这个时候我们就需要用到一个工具
  • nvm(node version manager): node 版本管理工具
    • 可以在一个电脑上安装多个版本的 node
    • 我们使用指令进行 node 版本的切换
  • 如果你想安装 nvm 这个工具
  • 把你已经安装好的 node 先卸载,再进行 nvm 的安装

windows 下的安装

  • 下载 nvm

  • 双击安装包进行安装,安装的时候会自动写入环境变量

  • 我们打开命令行(终端)

    • $ nvm version
    • 检测出现版本号就表示安装成功了
  • nvm安装相关文章

mac 下的安装

  • mac 下不需要安装包,直接在终端使用指令进行安装

  • 先去到 nvm的github地址

    • 向下滑动,找到下图位置

    • 两个红框的指令执行一个就行,建议使用上面那个

    • 直接打开终端执行就可以了

      # 下面两个指令执行一个就行,建议使用第一个
      $ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash
      $ wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash
      
  • 输入完指令按回车,会自动进行下载安装,但是此时还使用不了

  • 需要手动配置环境变量

nvm 的简单使用

  • 安装完毕以后,我们来说一下 nvm 怎么使用
  • 因为安装之前,我们已经把 node 卸载了,所以现在我们的电脑上没有 node 环境
  • 需要使用 nvm 进行下载
  • nvm 的使用全部都是在命令行(终端)中完成
    • 查看电脑上的存在的 node 版本
      • $ nvm list
      • 会显示你现在电脑上拥有的 node 的版本
      • 前面有 * 的,表示你现在正在使用的版本
    • 查看可安装的 node 版本
      • $ nvm list available
      • 会显示出可以安装的 node 版本
    • 使用 nvm 安装 node
      • $ nvm install 版本号
      • 会自动帮我们下载安装
      • 安装的时候,会附带安装好 npm
    • 使用 nvm 卸载 node
      • $ nvm uninstall 版本号
      • 会自动进行卸载
    • 切换 node 版本
      • $ nvm use 版本号
      • 就会切换到对应版本的 node
  • 注意: 使用 nvm 第一次安装完毕 node 以后是默认不直接使用的,要先切换一次再使用
  • nvm使用相关文章

nrm 安装

  • 我们在使用 npm 进行下载依赖的时候

  • npm 默认的下载地址是在国外

  • 那么我们下载的时候因为网络原因就会造成下载失败,或者下载太慢

  • nrm 是一个专门管理 npm 下载地址的工具

  • 在安装的时候直接使用 npm 进行安装就行

  • 打开命令行(终端)

    # windows 安装 nrm 的指令
    $ npm install --global nrm
    # OS 安装 nrm 的指令
    $ sudo nrm install --global nrm
    
  • 就会自动安装完毕

  • 安装完毕就可以使用了

  • 安装完成以后,直接在命令行(终端)输入

    • $ nrm --version
    • 出现版本号就表示安装成功了,就可以进行使用了

nrm 的简单使用

  • 我们使用 nrm 就是为了切换 npm 的下载地址

  • 直接在命令行(终端)使用指令就行

    • 测试可用下载地址的延迟信息

      • $ nrm test

      • 等到一段时间,会把所有可用地址和网络延迟显示出来

      • 前面就是可以使用的下载地址名称,后面就是网络延迟

      • 前面有 * 的表示你当前使用的下载地址

    • 切换下载地址

      • $ nrm use 地址名称

      • 就会自动进行切换了

      • 你再次下载的时候就是使用切换后的地址进行下载了