当前位置: 首页 > article >正文

Node.js 和 npm 安装教程

Node.js 和 npm 安装教程

  • Node.js 和 npm 安装教程
    • 什么是 Node.js 和 npm?
      • Node.js
      • npm
    • 安装前的注意事项
    • 在 Windows 上安装 Node.js 和 npm
      • 步骤 1:访问 Node.js 官网
      • 步骤 2:选择适合的版本
      • 步骤 3:下载安装包
      • 步骤 4:运行安装向导
      • 步骤 5:验证安装
      • 步骤 6:设置环境变量(可选)
    • 在 macOS 上安装 Node.js 和 npm
      • 步骤 1:使用 Homebrew 安装(推荐)
        • 安装 Homebrew
        • 使用 Homebrew 安装 Node.js 和 npm
      • 步骤 2:使用官方 installer(替代方法)
    • 在 Linux 上安装 Node.js 和 npm
      • 使用系统包管理器(推荐)
        • Ubuntu/Debian 系统
        • CentOS/RHEL 系统
      • 使用 nvm 安装(进阶)
        • 安装 nvm
        • 使用 nvm 安装 Node.js 和 npm
    • 更新 Node.js 和 npm
      • 使用 npm update 命令
      • 使用官方 installer 更新
      • 使用 nvm 更新(进阶)
    • 验证安装
    • 使用 npm 包
    • 卸载 Node.js 和 npm
      • 在 Windows 上卸载
      • 在 macOS 上卸载
      • 在 Linux 上卸载
        • 使用 apt-get 的系统:
        • 使用 yum 的系统:

Node.js 和 npm 安装教程

在当今的 web 开发领域,Node.js 和 npm(Node Package Manager)是两个非常重要的技术。Node.js 是一个基于 JavaScript 的运行环境,可以用来构建高效的网络应用程序;而 npm 则是一个强大的包管理工具,帮助开发者快速安装和管理项目依赖库。无论你是新手还是有经验的开发者,掌握 Node.js 和 npm 的安装方法都是非常基础且必要的技能。

本文将详细指导你如何在不同的操作系统(Windows、macOS 和 Linux)上安装 Node.js 和 npm,并提供一些进阶的使用技巧和注意事项。希望通过这篇教程,你能顺利完成 Node.js 和 npm 的安装,为后续的学习和开发打下坚实的基础。


什么是 Node.js 和 npm?

Node.js

Node.js 是由 JavaScript 创建的一个开源、跨平台的服务器端运行环境。它允许你在服务端运行 JavaScript 代码,从而可以构建
高性能的网络应用程序。Node.js 具有以下特点:

  1. 单线程事件驱动:Node.js 使用事件循环来处理异步操作,适用于高并发场景。
  2. 高效的 I/O 操作:基于 libuv 库实现非阻塞 I/O,适合处理大量的并发请求。
  3. 模块化开发:通过 CommonJS 规范实现了模块化的代码结构,便于维护和扩展。
  4. 活跃的生态系统:Node.js 拥有庞大的社区支持和丰富的第三方库。

npm

npm(Node Package Manager)是 Node.js 的默认包管理工具。它帮助开发者轻松地安装、管理和升级项目所需的依赖包。通过
npm,你可以快速获取并集成各种现成的 JavaScript 库,从而提高开发效率。

npm 还提供了一个中央仓库(即 npm registry),包含了数百万个可重用的代码包。这些包经过社区验证和维护,确保了高质量和
稳定性。有了 npm,开发者可以专注于核心业务逻辑,而无需从头实现所有功能。


安装前的注意事项

在开始安装 Node.js 和 npm 之前,请注意以下几点:

  1. 操作系统兼容性:Node.js 支持 Windows、macOS 和大多数 Linux 发行版。请确保你的系统满足最低版本要求。
  2. 64-bit 系统:Node.js 官方仅提供 64-bit 版本的安装包,因此请确认你的计算机运行的是 64-bit 操作系统。
  3. 权限问题:在某些操作系统中,安装或更新 Node.js 可能需要管理员权限。运行命令行工具时,请确保你有足够的权限。
  4. 选择 LTS 版本:Node.js 官方会定期发布新版本,建议优先选择长期支持(LTS)版本,以保证稳定性和兼容性。

在 Windows 上安装 Node.js 和 npm

步骤 1:访问 Node.js 官网

打开浏览器,访问 Node.js 的官方下载页面:

https://nodejs.org

步骤 2:选择适合的版本

在官网首页,你会看到两个主要选项:“LTS”(长期支持版)和“Current”(最新版)。对于大多数项目,建议选择 LTS 版本,
因为它更稳定且有较长的支持周期。

点击“LTS”标签下的“Download for Windows”按钮。

步骤 3:下载安装包

下载完成后,你会得到一个名为 node-vXX.Y.Z-win-x64.msi 的文件。双击该文件开始安装。

步骤 4:运行安装向导

在安装向导中,保持默认设置,点击“Next”逐步完成安装。如果你不想更改安装路径或其他选项,可以直接选择“Customize”并
继续安装。

步骤 5:验证安装

安装完成后,打开命令提示符(CMD),输入以下命令检查 Node.js 和 npm 是否安装成功:

node -v
npm -v

如果输出类似以下结果,则表示安装成功:

node v18.12.0
npm 9.5.1

步骤 6:设置环境变量(可选)

为了方便后续使用,建议将 Node.js 和 npm 添加到系统的 PATH 环境变量中。通常情况下,Node.js 的安装程序会自动完成这一步
,但如果你发现命令提示符无法识别 nodenpm 命令,则需要手动配置环境变量。


在 macOS 上安装 Node.js 和 npm

步骤 1:使用 Homebrew 安装(推荐)

Homebrew 是 macOS 上最流行的包管理工具。如果你还没有安装 Homebrew,可以按照以下步骤操作:

安装 Homebrew

打开终端,运行以下命令:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装完成后,重启终端。

使用 Homebrew 安装 Node.js 和 npm

在终端中运行:

brew install node

这将同时安装 Node.js 和 npm。安装完成后,验证版本:

node -v
npm -v

步骤 2:使用官方 installer(替代方法)

如果你不熟悉 Homebrew,可以直接从 Node.js 官网下载 macOS 版本的安装包。

访问 https://nodejs.org,选择适合的 LTS 版本,并点击“Download for macOS”按钮。双击下载的
.pkg 文件,按照提示完成安装。


在 Linux 上安装 Node.js 和 npm

使用系统包管理器(推荐)

大多数 Linux 发行版都提供了官方的 Node.js 包,可以通过系统的包管理工具进行安装。

Ubuntu/Debian 系统

在终端中运行以下命令:

curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install -y nodejs

安装完成后,验证版本:

node -v
npm -v
CentOS/RHEL 系统

运行以下命令:

curl -fsSL https://rpm.nodesource.com/setup_lts.x | sudo -E bash -
sudo yum install -y nodejs

使用 nvm 安装(进阶)

如果你需要管理多个 Node.js 版本,可以使用 nvm(Node Version Manager)。

安装 nvm

运行以下命令:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

安装完成后,重启终端或执行 source ~/.bashrc

使用 nvm 安装 Node.js 和 npm
nvm install --lts

这样会自动下载并安装最新的 LTS 版本,并设置为默认版本。


更新 Node.js 和 npm

使用 npm update 命令

Node.js 和 npm 提供了一个简便的命令来更新自身:

在终端中运行:

npm install -g node@latest npm@latest

注意:这种方法可能不会覆盖旧版本,具体取决于你的系统设置。

使用官方 installer 更新

你可以从 Node.js 官网下载最新版本的安装包,并按照之前的步骤进行替换安装。

使用 nvm 更新(进阶)

如果你使用了 nvm,更新非常简单:

nvm install --lts

或者指定具体版本:

nvm install v18.0.0

验证安装

无论你使用哪种操作系统,安装完成后都建议验证 Node.js 和 npm 是否正常工作。

在终端或命令提示符中输入以下命令:

node -v
npm -v

输出结果应该类似于:

v18.0.0
9.5.1

如果这两个命令都能正确显示版本信息,则说明安装成功。


使用 npm 包

一旦安装完成,你就可以开始使用 npm 安装各种包了。例如,运行以下命令可以安装 Express 框架:

npm install express

安装完成后,可以在你的项目目录中找到 node_modules 文件夹和 package.json 文件。


卸载 Node.js 和 npm

在 Windows 上卸载

你可以通过控制面板或直接删除 Node.js 安装目录来卸载。具体路径通常为:

C:\Program Files\nodejs\

在 macOS 上卸载

使用 Homebrew 卸载:

brew uninstall node

或者手动删除安装文件夹。

在 Linux 上卸载

根据你使用的包管理器进行操作:

使用 apt-get 的系统:
sudo apt-get remove --purge nodejs npm
使用 yum 的系统:
sudo yum erase nodejs

相关文章:

Node.js 和 npm 安装教程

Node.js 和 npm 安装教程 Node.js 和 npm 安装教程什么是 Node.js 和 npm?Node.jsnpm 安装前的注意事项在 Windows 上安装 Node.js 和 npm步骤 1:访问 Node.js 官网步骤 2:选择适合的版本步骤 3:下载安装包步骤 4:运行…...

简单易懂的倒排索引详解

文章目录 简单易懂的倒排索引详解一、引言 简单易懂的倒排索引详解二、倒排索引的基本结构三、倒排索引的构建过程四、使用示例1、Mapper函数2、Reducer函数 五、总结 简单易懂的倒排索引详解 一、引言 倒排索引是一种广泛应用于搜索引擎和大数据处理中的数据结构,…...

初级数据结构:栈和队列

目录 一、栈 (一)、栈的定义 (二)、栈的功能 (三)、栈的实现 1.栈的初始化 2.动态扩容 3.压栈操作 4.出栈操作 5.获取栈顶元素 6.获取栈顶元素的有效个数 7.检查栈是否为空 8.栈的销毁 9.完整代码 二、队列 (一)、队列的定义 (二)、队列的功能 (三&#xff09…...

在K8S中,pending状态一般由什么原因导致的?

在Kubernetes中,资源或Pod处于Pending状态可能有多种原因引起。以下是一些常见的原因和详细解释: 资源不足 概述:当集群中的资源不足以满足Pod或服务的需求时,它们可能会被至于Pending状态。这通常涉及到CPU、内存、存储或其他资…...

阿里云 - RocketMQ入门

前言 云消息队列 RocketMQ 版产品具备异步通信的优势,主要应用于【异步解耦】、【流量削峰填谷】等场景对于同步链路,需要实时返回调用结果的场景,建议使用RPC调用方案阿里云官网地址RocketMQ官网地址 模型概述 生产者生产消息并发送至服务…...

Agentic Automation:基于Agent的企业认知架构重构与数字化转型跃迁---我的AI经典战例

文章目录 Agent代理Agent组成 我在企业实战AI Agent企业痛点我构建的AI Agent App 项目开源 & 安装包下载 大家好,我是工程师令狐,今天想给大家讲解一下AI智能体,以及企业与AI智能体的结合,文章中我会列举自己在企业中Agent实…...

分享10个实用的Python工具的源码,支持定制

1.音频处理工具 【免费】一个功能丰富的音频处理工具箱,支持音频格式转换、剪辑和音量调节等功能资源-CSDN文库 2.视频转换工具 【免费】一个简单易用的视频格式转换工具,支持多种常见视频格式之间的转换资源-CSDN文库 3.PDF工具箱 【免费】一个功能…...

Denavit-Hartenberg DH MDH坐标系

Denavit-Hartenberg坐标系及其规则详解 6轴协作机器人的MDH模型详细图_6轴mdh-CSDN博客 N轴机械臂的MDH正向建模,及python算法_mdh建模-CSDN博客 运动学3-----正向运动学 | 鱼香ROS 机器人学:MDH建模 - 哆啦美 - 博客园 机械臂学习——标准DH法和改进MDH…...

WebPages 表单:设计与实现指南

WebPages 表单:设计与实现指南 引言 在当今的互联网时代,表单是WebPages与用户交互的重要手段。它不仅收集用户信息,还提供了一种便捷的交互方式。本文将详细介绍WebPages表单的设计与实现,旨在帮助开发者更好地理解并运用表单&…...

列表标签(无序列表、有序列表)

无序列表 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> </head><…...

每天学点小知识之设计模式的艺术-策略模式

行为型模式的名称、定义、学习难度和使用频率如下表所示&#xff1a; 1.如何理解模板方法模式 模板方法模式是结构最简单的行为型设计模式&#xff0c;在其结构中只存在父类与子类之间的继承关系。通过使用模板方法模式&#xff0c;可以将一些复杂流程的实现步骤封装在一系列基…...

AI开发学习之——PyTorch框架

PyTorch 简介 PyTorch &#xff08;Python torch&#xff09;是由 Facebook AI 研究团队开发的开源机器学习库&#xff0c;广泛应用于深度学习研究和生产。它以动态计算图和易用性著称&#xff0c;支持 GPU 加速计算&#xff0c;并提供丰富的工具和模块。 PyTorch的主要特点 …...

SAP HCM insufficient authorization, no.skipped personnel 总结归纳

导读 权限:HCM模块中有普通权限和结构化权限。普通权限就是PFCG的权限&#xff0c;结构化权限就是按照部门ID授权&#xff0c;颗粒度更细&#xff0c;对分工明细化的单位尤其重要&#xff0c;今天遇到的问题就是结构化权限的问题。 作者&#xff1a;vivi&#xff0c;来源&…...

机器学习算法在网络安全中的实践

机器学习算法在网络安全中的实践 本文将深入探讨机器学习算法在网络安全领域的应用实践&#xff0c;包括基本概念、常见算法及其应用案例&#xff0c;从而帮助程序员更好地理解和应用这一领域的技术。"> 序言 网络安全一直是信息技术领域的重要议题&#xff0c;随着互联…...

DeepSeek V3 vs R1:大模型技术路径的“瑞士军刀“与“手术刀“进化

DeepSeek V3 vs R1&#xff1a;——大模型技术路径的"瑞士军刀"与"手术刀"进化 大模型分水岭&#xff1a;从通用智能到垂直突破 2023年&#xff0c;GPT-4 Turbo的发布标志着通用大模型进入性能瓶颈期。当模型参数量突破万亿级门槛后&#xff0c;研究者们开…...

STM32CUBEIDE编译的hex使用flymcu下载后不能运行

测试后确认&#xff0c;不论是1.10版本还是1.16版本&#xff0c;编译生成的hex下载后不能运行&#xff0c;需要更改boot 设置才能开始运行&#xff0c;flymcu下载后已经告知一切正常&#xff0c;跳转到8000 0000处开始运行&#xff0c;实际没有反应&#xff0c;而使用mdk编译生…...

图像噪声处理技术:让图像更清晰的艺术

在这个数字化时代&#xff0c;图像作为信息传递的重要载体&#xff0c;其质量直接影响着我们的视觉体验和信息解读。然而&#xff0c;在图像采集、传输或处理过程中&#xff0c;难免会遇到各种噪声干扰&#xff0c;如高斯噪声、椒盐噪声等&#xff0c;这些噪声会降低图像的清晰…...

java-抽象类注意点

ChinesePerson 类 public class ChinesePerson extends Person{public ChinesePerson(){}public ChinesePerson(String name, int age){super(name, age);}Overridepublic void greet() {System.out.println("你好&#xff0c;我的名字叫" this.getName());} }Engl…...

【c++】类与对象详解

目录 面向过程思想和面向对象思想类的定义引入类的关键字类定义的两种方式类的访问限定符类的作用域类大小的计算封装 this指针类的6个默认成员函数构造函数初步理解构造函数深入理解构造函数初始化列表单参数构造函数引发的隐式类型转换 析构函数拷贝构造函数赋值运算符重载运…...

MySQL的GROUP BY与COUNT()函数的使用问题

在MySQL中&#xff0c;GROUP BY和 COUNT()函数是数据聚合查询中非常重要的工具。正确使用它们可以有效地统计和分析数据。然而&#xff0c;不当的使用可能会导致查询结果不准确或性能低下。本文将详细讨论 GROUP BY和 COUNT()函数的使用方法及常见问题&#xff0c;并提供相应的…...

问deepseek,如何看待ai降低学习成本而导致软件开发岗位需求降低,和工资下降。 软件从业人员何去何从?

它给我的回答是这样的&#xff1a; 思考逻辑 嗯&#xff0c;用户问的是AI如何降低学习成本&#xff0c;进而导致软件开发岗位需求减少和工资下降&#xff0c;以及软件从业人员该怎么办。这个问题挺复杂的&#xff0c;我得先理清楚各个部分。首先&#xff0c;AI确实在改变很多行…...

Jason配置环境变量

jason官网 https://jason-lang.github.io/ https://github.com/jason-lang/jason/releases 步骤 安装 Java 21 或更高版本 安装 Visual Studio Code 根据操作系统&#xff0c;请按照以下具体步骤操作 视窗 下载 Jason 的最新版本&#xff0c;选择“jason-bin-3.3.0.zip”…...

word2vec 实战应用介绍

Word2Vec 是一种由 Google 在 2013 年推出的重要词嵌入模型,通过将单词映射为低维向量,实现了对自然语言处理任务的高效支持。其核心思想是利用深度学习技术,通过训练大量文本数据,将单词表示为稠密的向量形式,从而捕捉单词之间的语义和语法关系。以下是关于 Word2Vec 实战…...

AI技术在SEO关键词优化中的应用策略与前景展望

内容概要 在数字营销的快速发展中&#xff0c;AI技术逐渐成为SEO领域的核心驱动力。其通过强大的数据分析和处理能力&#xff0c;不仅改变了我们优化关键词的方式&#xff0c;也提升了搜索引擎优化的效率和效果。在传统SEO中&#xff0c;关键词的选择与组合常依赖人工经验和直…...

c/c++高级编程

1.避免变量冗余初始化 结构体初始化为0&#xff0c;等价于对该内存进行一次memset&#xff0c;对于较大的结构体或者热点函数&#xff0c;重复的赋值带来冗余的性能开销。现代编译器对此类冗余初始化代码具有一定的优化能力&#xff0c;因此&#xff0c;打开相关的编译选项的优…...

玩转Docker | 使用Docker部署MySQL数据库

玩转Docker | 使用Docker部署MySQL数据库 玩转Docker | 使用Docker部署MySQL数据库一、Docker简介(一)Docker是什么(二)Docker的优势二、准备工作(一)安装Docker(二)了解MySQL数据库三、使用Docker部署MySQL数据库(一)拉取MySQL镜像(二)运行MySQL容器(三)验证MyS…...

【网络】传输层协议TCP(重点)

文章目录 1. TCP协议段格式2. 详解TCP2.1 4位首部长度2.2 32位序号与32位确认序号&#xff08;确认应答机制&#xff09;2.3 超时重传机制2.4 连接管理机制(3次握手、4次挥手 3个标志位)2.5 16位窗口大小&#xff08;流量控制&#xff09;2.6 滑动窗口2.7 3个标志位 16位紧急…...

HarmonyOS:ArkWeb进程

ArkWeb是多进程模型,分为应用进程、Web渲染进程、Web GPU进程、Web孵化进程和Foundation进程。 说明 Web内核没有明确的内存大小申请约束,理论上可以无限大,直到被资源管理释放。 ArkWeb进程模型图 应用进程中Web相关线程(应用唯一) 应用进程为主进程。包含网络线程、Vi…...

说说Redis的内存淘汰策略?

大家好&#xff0c;我是锋哥。今天分享关于【说说Redis的内存淘汰策略?】面试题。希望对大家有帮助&#xff1b; 说说Redis的内存淘汰策略? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Redis 提供了多种内存淘汰策略&#xff0c;用于在内存达到限制时决定如何…...

DeepSeek为什么超越了OpenAI?从“存在主义之问”看AI的觉醒

悉尼大学学者Teodor Mitew向DeepSeek提出的问题&#xff0c;在推特上掀起了一场关于AI与人类意识的大讨论。当被问及"你最想问人类什么问题"时&#xff0c;DeepSeek的回答直指人类存在的本质&#xff1a;"如果意识是进化的偶然&#xff0c;宇宙没有内在的意义&a…...