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

【Node.js】Node.js安装详细步骤和创建Express项目演示

Node.js是一个开源的、跨平台的JavaScript运行环境,用于在服务器端运行JavaScript代码。它提供了一个简单的API,可以用于开发各种网络和服务器应用程序。

以下是Node.js的安装和使用的详细步骤和代码示例:

1、下载Node.js

访问Node.js官方网站,下载适合你操作系统的版本。对于Windows用户,可以下载.msi文件,对于Mac用户,可以下载.pkg文件,对于Linux用户,可以下载.tar.gz文件。
官网首页:推荐18.17.1 LTS版本
在这里插入图片描述

2、安装Node.js

对于Windows和Mac用户,可以双击下载的安装文件,按照提示安装。对于Linux用户,可以解压下载的.tar.gz文件,进入解压后的目录,执行以下命令安装:

sudo apt-get update
sudo apt-get install nodejs

下面介绍Windows版安装过程:一直点击next,就安装完成。
在这里插入图片描述

3、验证安装

安装完成后,打开终端或命令行窗口,输入以下命令验证Node.js是否成功安装:

node -v
输出:v18.17.1

如果输出了Node.js的版本号,说明安装成功。

4、编写Node.js程序

创建一个名为app.js的文件,输入以下代码:

 const os = require('node:os');let cups = os.cpus();console.log(cups);

运行命令:node .\demo.js
这是一个简单的Node.js程序,运行输出:

[{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 6470625,nice: 0,sys: 10327390,idle: 1041758375,irq: 626765}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 6784390,nice: 0,sys: 8064656,idle: 1043707046,irq: 85984}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 8906109,nice: 0,sys: 12502437,idle: 1037147546,irq: 183734}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 5545609,nice: 0,sys: 10756093,idle: 1042254390,irq: 75453}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 5543031,nice: 0,sys: 7715734,idle: 1045297312,irq: 95156}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 4580484,nice: 0,sys: 9040343,idle: 1044935250,irq: 63671}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 8635468,nice: 0,sys: 16050562,idle: 1033870046,irq: 121609}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 6555671,nice: 0,sys: 15675906,idle: 1036324500,irq: 44578}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 5325343,nice: 0,sys: 8493781,idle: 1044736953,irq: 103296}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 4272343,nice: 0,sys: 8286390,idle: 1045997343,irq: 69843}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 7835000,nice: 0,sys: 13760187,idle: 1036960890,irq: 118390}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 6787234,nice: 0,sys: 15863359,idle: 1035905484,irq: 56687}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 5320062,nice: 0,sys: 8372703,idle: 1044863296,irq: 202765}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 4378234,nice: 0,sys: 8924750,idle: 1045253078,irq: 35968}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 7873718,nice: 0,sys: 11812968,idle: 1038869375,irq: 104671}},{model: 'Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz',speed: 2904,times: {user: 8687765,nice: 0,sys: 14733875,idle: 1035134421,irq: 100234}}
]
5、创建Node.js项目

创建一个Node.js项目需要执行以下步骤:

5.1、安装Node.js:在您的计算机上安装Node.js,可以使用Node.js命令行工具。
5.2、创建一个新的文件夹:在您选择的目录下创建一个新的文件夹,作为项目文件夹。

在这里插入图片描述

5.3、打开命令行工具:在项目文件夹中打开命令行工具。
5.4、初始化Node.js项目:在命令行中运行以下命令,以初始化一个新的Node.js项目:
npm init -y

在这里插入图片描述

该命令将创建一个名为package.json的文件,其中包含有关项目的元数据和其他信息。

{"name": "nodedemo","version": "1.0.0","description": "","main": "index.js","scripts": {"test": "echo \"Error: no test specified\" && exit 1"},"keywords": [],"author": "","license": "ISC"
}
5.5、安装依赖项:如果您的项目需要使用任何依赖项,请使用npm install命令安装它们。例如,如果您需要使用Express框架,请运行以下命令:
npm install express

在这里插入图片描述

5.6、编写代码:在项目文件夹中创建一个或多个JavaScript文件,并编写您的Node.js代码。
const express = require('express')
const app = express()
const port = 3000app.get('/', (req, res) => {res.send('Hello World!')
})app.listen(port, () => {console.log(`Example app listening on port ${port}`)
})

在这里插入图片描述

5.7、运行应用程序:在命令行中运行以下命令,以启动您的Node.js应用程序:
node index.js

在这里插入图片描述
访问接口:

在这里插入图片描述

相关文章:

【Node.js】Node.js安装详细步骤和创建Express项目演示

Node.js是一个开源的、跨平台的JavaScript运行环境,用于在服务器端运行JavaScript代码。它提供了一个简单的API,可以用于开发各种网络和服务器应用程序。 以下是Node.js的安装和使用的详细步骤和代码示例: 1、下载Node.js 访问Node.js官方…...

栈和队列OJ

一、括号的匹配 题目介绍: 思路: 如果 c 是左括号,则入栈 push;否则通过哈希表判断括号对应关系,若 stack 栈顶出栈括号 stack.pop() 与当前遍历括号 c 不对应,则提前返回 false。栈 stack 为空&#xff1…...

Bootstrap的CSS类积累学习

要看哪个的介绍&#xff0c;搜索关键词就行了。 001-container 这是Bootstrap中定义的一个CSS类&#xff0c;它用于创建一个具有固定宽度的容器。比如&#xff0c;container类将<div>元素包装成一个固定宽度的容器。详情见&#xff1a;https://blog.csdn.net/wenhao_ir…...

Scala的集合操作之可变数组和不可变数组,可变List集合与不可变List集合,可变Set与不可变Set操作,可变和不可变Map集合和元组操作

Scala的集合操作之&#xff0c;可变数组和不可变数组&#xff0c;可变List集合与不可变List集合 不可变数组 /* traversable/ˈtrvəsəbl/adj.能越过的&#xff1b;可否认的*/ object Test01_ImmutableArray {def main(args: Array[String]): Unit {// 1. 创建数组val arr:…...

优化Docker权限管理:配置Docker用户组

Docker 利用 Linux 的用户和组权限来管理对 Docker 守护进程的访问权限。一般情况下&#xff0c;只有 root 用户和属于 docker 用户组的用户才被允许访问 Docker 守护进程。在 Linux 系统上使用 Docker 时&#xff0c;如果您尚未配置 docker 用户组&#xff0c;那么作为非 root…...

python+opencv读取rtsp流

前言 在使用yolov5做物体检测中&#xff0c;需要拉取视频流。分解任务第一步则是需要使用opencv读取rtsp流&#xff0c;只要拿到每一帧图片在进行推理显示即可。 代码 import cv2 def read_rtsp():cap cv2.VideoCapture(rtsp://admin:Vrc123456192.168.2.226:554)fourcc c…...

linux入门---动静态库的加载

目录标题 为什么会有动态库和静态库静态库的实现动态库的实现动静态库的加载 为什么会有动态库和静态库 我们来模拟一个场景&#xff0c;首先创建两个头文件 根据文件名便可以得知add.h头文件中存放的是加法函数的声明&#xff0c;sub.h头文件中存放的是减法函数的声明&#…...

计算机竞赛 基于深度学习的人脸专注度检测计算系统 - opencv python cnn

文章目录 1 前言2 相关技术2.1CNN简介2.2 人脸识别算法2.3专注检测原理2.4 OpenCV 3 功能介绍3.1人脸录入功能3.2 人脸识别3.3 人脸专注度检测3.4 识别记录 4 最后 1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 基于深度学习的人脸专注度…...

【Yolov5+Deepsort】训练自己的数据集(3)| 目标检测追踪 | 轨迹绘制 | 报错分析解决

&#x1f4e2;前言&#xff1a;本篇是关于如何使用YoloV5Deepsort训练自己的数据集&#xff0c;从而实现目标检测与目标追踪&#xff0c;并绘制出物体的运动轨迹。本章讲解的为第三部分内容&#xff1a;数据集的制作、Deepsort模型的训练以及动物运动轨迹的绘制。本文中用到的数…...

docker desktop如何一键进入容器内部

对着对应的容器 点击 view files...

多机单目标跟踪Cross-Drone Transformer Network for Robust Single Object Tracking

1. 摘要 无人机已被广泛用于各种应用&#xff0c;如空中摄影和军事安全&#xff0c;因为与固定摄像机相比&#xff0c;无人机具有高机动性和广阔的视野。多架无人机跟踪系统可以通过收集不同视角的互补视频片段来提供丰富的目标信息&#xff0c;特别是当目标在某些视角下被遮挡…...

手写Mybatis:第7章-SQL执行器的定义和实现

文章目录 一、目标&#xff1a;SQL执行的定义和实现二、设计&#xff1a;SQL执行的定义和实现三、实现&#xff1a;SQL执行的定义和实现3.1 工程结构3.2 SQL执行实现的关系图3.3 执行器的定义和实现3.3.1 Executor 接口3.3.2 BaseExecutor 抽象基类3.3.3 SimpleExecutor 简单执…...

C语言基础知识理论版(很详细)

文章目录 前述一、数据1.1 数据类型1.2 数据第一种数据&#xff1a;常量第二种数据&#xff1a;变量第三种数据&#xff1a;表达式1、算术运算符及算术表达式2、赋值运算符及赋值表达式3、自增、自减运算符4、逗号运算符及其表达式&#xff08;‘顺序求值’表达式&#xff09;5…...

CG MAGIC分享3d Max中的Corona渲染器材质如何成转换VRay材质?

大家无论是使用Corona渲染器还是Vray渲染器时&#xff0c;进行材质问题时&#xff0c;都会遇到转化材质问题。 如何将CR转换成VR或者将VR转换CR材质呢&#xff1f; 对于这两者之间转换最好最好的方法只能是材质转换器。 CG MAGIC小编&#xff0c;梳理了两种方法&#xff0c;大…...

电脑入门:路由器常见问题排错步骤

HiPER系列路由器使用中Ping LAN口不通的诊断步骤 准备工作: 在可以ping通的时候记录下路由器LAN口的MAC地址: 命令hiper% show interface ethernet/1 mac Mac : 0022aa419d1e 以下步骤在ping不通路由器的时候依次操作,并记下结果: 步骤一:观察设备各端口…...

mac电脑识别不出来u盘?mac识别不了u盘怎么办

有些用户反馈说本来想要拷贝文件&#xff0c;但是将U盘插入mac系统后竟然不能识别&#xff0c;这时候我们需要用到NTFS For Mac软件。 其实mac系统只提供了它自身磁盘格式(mac os 扩展)等的读写权限&#xff0c;只提供了读的权限给NTFS、FAT32给硬盘和U盘&#xff0c;我们99%使…...

【系统编程】线程池以及API接口简介

(꒪ꇴ꒪ )&#xff0c;Hello我是祐言QAQ我的博客主页&#xff1a;C/C语言&#xff0c;数据结构&#xff0c;Linux基础&#xff0c;ARM开发板&#xff0c;网络编程等领域UP&#x1f30d;快上&#x1f698;&#xff0c;一起学习&#xff0c;让我们成为一个强大的攻城狮&#xff0…...

Verilog零基础入门(边看边练与测试仿真)-笔记

文章目录 第一讲第二讲第三讲第四讲 第一讲 1、testbench 没有端口&#xff0c;所以没括号 2、testbench 输入端 之后要变动 所以定义为reg 3、#10 &#xff1a;过10个时间单位 &#xff1b;’timescale 1ns/10ps 即 1ns 的时间单位 10ps的时间精度 4、reg 型变量赋值的时候 用…...

LLMs之Code:Code Llama的简介、安装、使用方法之详细攻略

LLMs之Code&#xff1a;Code Llama的简介、安装、使用方法之详细攻略 导读&#xff1a;2023年08月25日(北京时间)&#xff0c;Meta发布了Code Llama&#xff0c;一个可以使用文本提示生成代码的大型语言模型(LLM)。Code Llama是最先进的公开可用的LLM代码任务&#xff0c;并有潜…...

[国产MCU]-W801开发实例-MQTT客户端通信

MQTT客户端通信 文章目录 MQTT客户端通信1、MQTT介绍2、W801的MQTT客户端相关API介绍3、代码实现本文将详细介绍如何在W801中使用MQTT协议通信。 1、MQTT介绍 MQTT 被称为消息队列遥测传输协议。它是一种轻量级消息传递协议,可通过简单的通信机制帮助资源受限的网络客户端。 …...

JavaSec-RCE

简介 RCE(Remote Code Execution)&#xff0c;可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景&#xff1a;Groovy代码注入 Groovy是一种基于JVM的动态语言&#xff0c;语法简洁&#xff0c;支持闭包、动态类型和Java互操作性&#xff0c…...

C++_核心编程_多态案例二-制作饮品

#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为&#xff1a;煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例&#xff0c;提供抽象制作饮品基类&#xff0c;提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练

前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1)&#xff1a;从基础到实战的深度解析-CSDN博客&#xff0c;但实际面试中&#xff0c;企业更关注候选人对复杂场景的应对能力&#xff08;如多设备并发扫描、低功耗与高发现率的平衡&#xff09;和前沿技术的…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例

文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

MySQL 8.0 OCP 英文题库解析(十三)

Oracle 为庆祝 MySQL 30 周年&#xff0c;截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始&#xff0c;将英文题库免费公布出来&#xff0c;并进行解析&#xff0c;帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

C++八股 —— 单例模式

文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全&#xff08;Thread Safety&#xff09; 线程安全是指在多线程环境下&#xff0c;某个函数、类或代码片段能够被多个线程同时调用时&#xff0c;仍能保证数据的一致性和逻辑的正确性&#xf…...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2

每日一言 今天的每一份坚持&#xff0c;都是在为未来积攒底气。 案例&#xff1a;OLED显示一个A 这边观察到一个点&#xff0c;怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 &#xff1a; 如果代码里信号切换太快&#xff08;比如 SDA 刚变&#xff0c;SCL 立刻变&#…...