Node介绍(nvm安装和npm常用命令)

文章目录

    • [Node 介绍](#Node 介绍)
    • [为什么要学习 Node.js](#为什么要学习 Node.js)
    • [Node.js 是什么](#Node.js 是什么)
    • Node能做什么
    • nvm
    • [常用的 nvm 命令](#常用的 nvm 命令)
    • [npm 快捷键](#npm 快捷键)
    • [npm 常用命令](#npm 常用命令)
      • [切换 npm 下包镜像源](#切换 npm 下包镜像源)
      • 常用命令

Node 介绍

为什么要学习 Node.js

  • 企业需求
    • 具有服务端开发经验更改
    • front-end
    • back-end
    • 全栈开发工程师
    • 基本的网站开发能力
      • 服务端
      • 前端
      • 运维部署
    • 多人社区

Node.js 是什么

  • Node.js 是 JavaScript 运行时(Runtime)
  • 通俗易懂的讲,Node.js 是 JavaScript 的运行平台
  • Node.js 既不是语言,也不是框架,它是一个平台
  • 浏览器中的 JavaScript
    • EcmaScript
      • 基本语法
      • if
      • var
      • function
      • Object
      • Array
    • Bom
    • Dom
  • Node.js 中的 JavaScript
    • 没有Bom,Dom
    • EcmaScript
    • 在 Node 中这个 JavaScript 执行环境为 JavaScript 提供了一些服务器级别的 API
      • 例如文件的读写
      • 网络服务的构建
      • 网络通信
      • http服务器
  • 构建与 Chrome 的 V8 引擎之上
    • 代码只是具有特定格式的字符串
    • 引擎可以认识它,帮你解析和执行
    • Google Chrome 的 V8 引擎是目前公认的解析执行 JavaScript 代码最快的
    • Node.js 的作者把 Google Chrome 中的 V8 引擎移植出来,开发了一个独立的 JavaScript 运行时环境
  • Node.js uses an envent-driven,non-blocking I/O mode that makes it lightweight and efficent.
    • envent-driven 事件驱动
    • non-blocking I/O mode 非阻塞I/O模型(异步)
    • ightweight and efficent. 轻量和高效
  • Node.js package ecosystem,npm,is the larget scosystem of open sourcr libraries in the world
    • npm 是世界上最大的开源生态系统
    • 绝大多数 JavaScript 相关的包都存放在 npm 上,这样做的目的是为了让开发人员更方便的去下载使用
    • npm install jquery

Node能做什么

  • web服务器后台
  • 命令行工具
    • npm(node)
    • git(c语言)
    • hexo(node)
    • ...
  • 对于前端工程师来讲,接触最多的是它的命令行工具
    • 自己写的很少,主要是用别人第三方的
    • webpack
    • gulp
    • npm

nvm

不同的项目可能对于 Node.js 的版本要求不同,这时需要我们切换不同版本的 Node.js。我们可以通过 nvm 来管理 Node.js 版本。

nvm(Node Version Manager)是一个用于管理 Node.js 版本的工具,它被设计成每个用户独立安装,并在每个终端会话中调用。nvm 可以在任何符合 POSIX 标准的 shell(如 sh、dash、ksh、zsh、bash)上运行,特别适用于以下平台:Unix、macOS 和 Windows 的 WSL(Windows Subsystem for Linux)。

nvm 的主要功能是允许用户轻松切换不同版本的 Node.js,并在不同的项目中使用不同的 Node.js 版本。它为每个已安装的 Node.js 版本提供隔离的运行环境,使得用户可以在同一系统上同时使用多个 Node.js 版本而不会相互干扰。

安装 nvm 步骤,参考博客:点击这里查看博客

常用的 nvm 命令

1. 安装 Node.js 版本:

  • 安装最新稳定版的 Node.js:nvm install stable
  • 安装指定版本的 Node.js:nvm install <version> (例如:nvm install 14.17.0

2. 切换 Node.js 版本:

  • 切换到已安装的其中一个版本:nvm use <version> (例如:nvm use 14.17.0
  • 可以通过简写版本号进行切换(例如 nvm use 14),nvm 将自动选择符合的已安装版本。
  • 如果在项目目录中创建了 .nvmrc 文件,nvm 在进入该目录时会自动切换到文件中指定的 Node.js 版本。

3. 查看已安装的 Node.js 版本:

  • 列出已安装的所有版本:nvm ls
  • 列出远程可用的所有版本:nvm ls-remote

4. 卸载 Node.js 版本:

  • 卸载指定的 Node.js 版本:nvm uninstall <version> (例如:nvm uninstall 14.17.0

5. 设置默认的 Node.js 版本:

  • 设置默认版本:nvm alias default <version> (例如:nvm alias default 14.17.0
  • 这样,在新打开的终端中将自动使用默认版本。

6. 运行 Node.js 命令和 npm:

  • 在已安装的 Node.js 版本下运行命令:nvm exec <version> <command> (例如:nvm exec 14.17.0 node -v
  • 在当前使用的 Node.js 版本下运行命令:nvm run <command> (例如:nvm run node -v

npm 快捷键

1、使用↑键,可以快速定位到上一次执行的命令

2、使用tab 键,能够快速补全路径

3、使用esc 键,能够快速清空当前已输入的命令

4、输入 cs 命令,可以清空终端

npm 常用命令

切换 npm 下包镜像源

shell 复制代码
# 查看当前的下包镜像源
npm config get registry
#将下包的镜像源切换为淘宝镜像源
npm config set registry=https://registry.npm.taobao.org!5#检查镜像源是否下载成功6 npm config get registry
#检查镜像源是否下载成功
npm config get registry

常用命令

  • npm init(生成package.json说明书文件)
    • npm init -y(可以跳过向导,快速生成)
  • npm install
    • 一次性把dependencies选项中的依赖项全部安装
    • 简写(npm i)
  • npm install 包名
    • 只下载
    • 简写(npm i 包名)
  • npm install --save 包名
    • 下载并且保存依赖项(package.json文件中的dependencies选项)
    • 简写(npm i 包名)
  • npm uninstall 包名
    • 只删除,如果有依赖项会依然保存
    • 简写(npm un 包名)
  • npm uninstall --save 包名
    • 删除的同时也会把依赖信息全部删除
    • 简写(npm un 包名)
  • npm help
    • 查看使用帮助
  • npm 命令 --help
    • 查看具体命令的使用帮助(npm uninstall --help)
相关推荐
小政爱学习!16 分钟前
封装axios、环境变量、api解耦、解决跨域、全局组件注入
开发语言·前端·javascript
魏大帅。21 分钟前
Axios 的 responseType 属性详解及 Blob 与 ArrayBuffer 解析
前端·javascript·ajax
花花鱼27 分钟前
vue3 基于element-plus进行的一个可拖动改变导航与内容区域大小的简单方法
前端·javascript·elementui
k093331 分钟前
sourceTree回滚版本到某次提交
开发语言·前端·javascript
EricWang13581 小时前
[OS] 项目三-2-proc.c: exit(int status)
服务器·c语言·前端
September_ning1 小时前
React.lazy() 懒加载
前端·react.js·前端框架
web行路人1 小时前
React中类组件和函数组件的理解和区别
前端·javascript·react.js·前端框架
超雄代码狂1 小时前
ajax关于axios库的运用小案例
前端·javascript·ajax
长弓三石2 小时前
鸿蒙网络编程系列44-仓颉版HttpRequest上传文件示例
前端·网络·华为·harmonyos·鸿蒙
小马哥编程2 小时前
【前端基础】CSS基础
前端·css