0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Node.js小科普和Node.js安装常见管理工具

jf_10471008 ? 来源:jf_10471008 ? 作者:jf_10471008 ? 2024-11-23 15:37 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Node.js是一个JavaScript的运行环境,用来执行JavaScript代码。

为什么会出现这么一个运行环境呢,从JavaScript研发初衷可以看出它是为了运行在浏览器中的,让网页交互更加便捷。但是随着JavaScript影响力不断壮大,它的使用范围已经发生了变化。2009年,Node.js发布,初代版本支持基本的网络通信和文件系统操作,这让JavaScript可以到服务器上大展拳脚,标志着JavaScript可以用于服务器端编程

Node.js中node是指一个节点,在这里我们可以用来形容一种环境,而后面.js则是代表这是针对JavaScript的,防止与其他的node项目混淆,但是随着Node.js知名度越来越高,现在几乎直接以node代指Node.js了。

Node.js的出现推动了JavaScript的全栈开发,允许开发者使用同一种语言编写前端和后端代码。

Node.js除了提供JavaScript运行环境外,还提供了丰富的模块库,可以直接在开发时引入,使得开发更加高效和便捷。

Node.js采用了事件驱动、非阻塞式I/O模型,这意味着它可以在单线程上处理大量并发连接。传统的服务端编程模型通常是多线程或多进程的,每个连接都需要一个独立的线程或进程来处理,这在处理大量并发连接时会造成很大的性能损耗。而Node.js通过事件循环和回调函数的方式,实现了非阻塞式I/O操作,使得单个线程可以处理更多的并发连接,从而提高了整体性能。


Node.js的安装与常用管理工具

本小节演示环境系统为ubuntu22.04,其他发行版Linux系统除命令有细微差别外,其余一致。

在开始操作之前,我们再简单了解几个与Node.js相关的概念,可以帮助我们更了解自己接下来的操作。

nvm:即Node Version Manager,根据名字很明显可以看出,这是用来安装和管理Node.js版本的。

npm:即NodePackage Manager,我们之前提到过Node.js里面除了携带了V8引擎,还携带了很多模块库,npm则是负责管理这些功能模块库的,这些功能模块也就是我们所说的项目依赖。目前版本的npm会随着Node.js的安装一同被安装,所以非特殊情况不用单独安装。

1.使用nvm安装和管理Node.js

官网提供了如何使用nvm来安装Node.js,想深入了解可移步:https://nodejs.org/en/download/package-manager

下面将展示在ubuntu系统下进行安装的简单流程:

1.1 安装nvm

使用如下命令安装nvm:

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

如果你的网络无法拉取github的内容,可以使用如下方法通过gitee来安装nvm

#先安装git
sudoapt-get installgit
#再安装nvm
curl-o-https://gitee.com/RubyMetric/nvm-cn/raw/main/install.sh |bash

安装完毕后,可以看到用户目录中多了.nvm文件夹

wKgaoWdAW-uAMTp1AAEY6_6a3RI911.png


安装完毕后,可以重新打开终端或者运行以下命令来让nvm立即生效:

source~/.nvm/nvm.sh

nvm生效后,可以使用nvm -v命令来检查nvm版本

wKgZoWdAW-yAa3WmAAAUjMcxQYs796.png

1.2 安装Node.js

使用刚刚安装的nvm来安装Node.js,执行如下命令,可以安装最新的稳定版Node.js

nvm installnode

若想安装非最新版,而想指定版本进行安装,使用如下命令,例如安装16.20.2版本的Node.js

nvm install16

当然也可以安装其他更多的版本,这些版本都会受到nvm管理,并且可以通过nvm来对这些版本进行操作,例如使用如下命令查看当前安装的版本:

nvm list

通过下图可以看到我们已经安装了16和22版本的Node.js,下面是nvm工具中一些版本的别名,我们可以忽略。当前使用的版本是16.20.2版本。

wKgaoWdAW-yASYKZAADmkN8nZwo024.png


如果想切换Node.js版本环境进行开发,使用如下命令:

nvm use22

下图中可以看到已经切换为22版本了

wKgZoWdAW-2AWn8IAAC_9SBDnRk121.png



1.3 创建一个简单的JavaScript程序

创建一个名为getUptime.js的JavaScript程序,简单写入一个功能,使用内置模块功能获取系统运行时间

constos=require('os')//引入os模块

constuptime=os.uptime()//获取系统运行时间
console.log(`system uptime: ${uptime}sec`)

保存后,使用如下命令执行该文件

nodegetUptime.js

得到如下输出内容

wKgaoWdAW-6AGGHbAAAh56Qp58c040.png



可以看到在这个简单的操作中,Node.js扮演了很重要的角色,它不止能运行JavaScript程序,也给JavaScript提供了丰富的模块库。除了内置模块外,Node.js还支持通过npm引入第三方模块生态系统,这些模块可以为JavaScript提供几乎无限的扩展能力。


文章转载来源:https://www.ebyte.com/news/3701.html

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NODE.JS
    +关注

    关注

    1

    文章

    49

    浏览量

    33330
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【M-K1HSE开发板免费体验】M-K1HSE开发板构建HELLO WORLD页面

    工程存放的位置,其他参数保持默认设置即可,点击【finish 】。 其中Node用来配置当前工程运行的Node.js版本,可选择使用已有的Node.js或下载新的Node.js版本 4
    发表于 07-15 04:31

    HarmonyOS5云服务技术分享--ArkTS开发函数

    等打包 ? 支持Node.js 14.x/18.x和Java 1.8 ? 支持HTTP触发器调用 ? 持续开发调试一条龙 ?? 准备工作: 安装AGCLI工具(华为应用分发服务命令行工具
    发表于 05-22 17:29

    HarmonyOS5云服务技术分享--ArkTS开发Node环境

    ? 你好呀,开发者小伙伴们!今天我们来聊聊如何在HarmonyOS(ArkTS API 9及以上)中玩转云函数,特别是结合Node.js和HTTP触发器的开发技巧。文章会手把手带你从零开始,用最接地
    发表于 05-22 17:21

    HarmonyOS5云服务技术分享--云函数创建配置指南

    。HarmonyOS的AGC平台提供灵活配置,支持Node.js、Python、Java等多种语言,还能自定义运行环境哦! ?? 二、手把手创建第一个云函数 ??Step 1:进入云函数控制台?? 登录
    发表于 05-22 17:08

    KaihongOS操作系统:开发环境搭建

    自动进行开发环境诊断。如果诊断结果如下图所示, 表示 ohpm 没有安装。 处理方法: 在 Node.js 安装路径下启动 cmd 命令行工具。 执行以下命令切换 NPM 源。 n
    发表于 04-23 07:27

    在树莓派上构建和部署 Node.js 项目

    探索在RaspberryPi上构建和部署Node.js项目的最佳实践。通过我们的专业提示和技巧,克服常见挑战,使您的项目顺利运行。去年圣诞节,我收到了一份极其令人着迷的礼物,它占据了我许多周末的时间
    的头像 发表于 03-25 09:44 ?311次阅读
    在树莓派上构建和部署 <b class='flag-5'>Node.js</b> 项目

    【干货】什么是Node-RED?一文带你了解!

    一什么是Node-RED?首先我们来认识一下什么是Node-RED。Node-RED是一个基于Node.js的开源可视化编程工具,于2013
    的头像 发表于 03-13 19:32 ?940次阅读
    【干货】什么是<b class='flag-5'>Node</b>-RED?一文带你了解!

    hyper管理器,Hyper管理器:管理工具使用指南

    随着大数据、云计算等新兴技术的不断发展,数据的规模呈指数级增长。在这样的背景下,批量管理工具的价值愈发凸显,它成为了我们在数据管理领域的重要利器。今天就为大家介绍Hyper管理器:管理工具
    的头像 发表于 02-08 09:57 ?1046次阅读
    hyper<b class='flag-5'>管理</b>器,Hyper<b class='flag-5'>管理</b>器:<b class='flag-5'>管理工具</b>使用指南

    Bun 1.2震撼发布:全力挑战Node.js生态的JavaScript运行时新星

    了与 Node.js 的兼容性,还为开发者带来了内置的数据库支持和云服务集成能力,进一步强化了其“全能工具包”的定位。Node.js 兼容性获得突破性进展在此次更新中,最引人注目的是 Bun 在
    的头像 发表于 01-24 10:42 ?930次阅读
    Bun 1.2震撼发布:全力挑战<b class='flag-5'>Node.js</b>生态的JavaScript运行时新星

    ADI电源管理工具推荐

    ADI 提供了一整套电源管理工具,帮助您一次性正确设计电源解决方案。ADI 的电源管理工具支持从零件推荐到性能估算、实用的电源树设计、电路仿真和系统级优化的整个设计过程。探索这些免费且强大的工具
    的头像 发表于 12-23 09:46 ?894次阅读

    cmp项目管理工具的优缺点

    CMP项目管理工具,在不同的语境下有不同的含义。一种是指综合项目管理平台(Comprehensive Management Platform),它旨在整合和优化项目的各个方面,包括时间管理、资源
    的头像 发表于 12-17 09:42 ?883次阅读

    使用OpenVINO? ElectronJS中创建桌面应用程序

    的用户体验。 1 应用程序概览:一种简单的背景虚化方法 这个演示展示了如何在 Node.js 环境中使用 OpenVINO 工具包实现背景虚化,并通过 Electron.js 创建的直观桌面界面进行
    的头像 发表于 11-25 11:35 ?629次阅读
    使用OpenVINO? ElectronJS中创建桌面应用程序

    前端技术探秘-Nodejs的CommonJS规范实现原理

    了解Node.js Node.js是一个基于ChromeV8引擎的JavaScript运行环境,使用了一个事件驱动、非阻塞式I/O模型,让JavaScript 运行在服务端的开发平台,它让
    的头像 发表于 11-05 11:56 ?1224次阅读
    前端技术探秘-Nodejs的CommonJS规范实现原理

    工程师必备!Node.js常见管理工具介绍(附操作演示)

    语言及其相关生态中的一些基础而关键的概念,以及它们是如何在互联网历史浪潮中产生的。一JavaScript与Node.js1JavaScriptJavaScript,即JS
    的头像 发表于 08-30 12:34 ?596次阅读
    工程师必备!<b class='flag-5'>Node.js</b>和<b class='flag-5'>常见</b><b class='flag-5'>管理工具</b>介绍(附操作演示)

    ARMxy ARM 物联网边缘计算网关支持 Node-RED 用于工业控制

    在恶劣环境下稳定运行。丰富的通信接口(如网口、USB、RS485 等)及 WiFi/4G 支持,使网关能够灵活适应不同网络环境。 Node-RED 是一个基于 Node.js 的流程编排工具,通过
    的头像 发表于 08-19 17:01 ?881次阅读
    ARMxy ARM 物联网边缘计算网关支持 <b class='flag-5'>Node</b>-RED 用于工业控制