
NodeJS 笔记
文章平均质量分 84
个人学习笔记,欢迎交流指正~
JS.Huang
卷不动了,可以躺平吗
展开
-
在 EggJS 中实现 Redis 上锁
访问 https://github.com/microsoftarchive/redis/releases 选择版本进行下载 - 勾选 [配置到环境变量] - 无脑下一步并安装查看已安装的 Redis 版本,能成功查看就表示安装成功啦~原创 2024-01-20 23:30:40 · 967 阅读 · 0 评论 -
【Node】介绍一下 package.json
- package.json 用于记录一些项目信息,比如项目名、版本号、项目描述、依赖包...- package.json 必须是一个合法的 JSON 文件,不能使用注释或者尾逗号等非标准语法- package.json 必须包含 name 和 version 字段,它们组成项目的唯一标识在日常开发中,项目的依赖包会被存放到 node_modules 目录下,因此 node_modules 文件夹的体积会很大,不方便团队之间的传输。通常我们会把 node_modules 目录配置到原创 2023-06-19 10:58:47 · 1834 阅读 · 0 评论 -
【Node】事件循环机制
# Node 中的异步 API1. 定时器:`setTimeout`、`setInterval`2. I/O 操作:文件读写、数据库操作、网络请求...3. Node 独有的 API:`process.nextTick`、`setImmediate`# 事件循环的流程- Node 的事件循环分为 6 个阶段,这 6 个阶段会按顺序反复运行- 运行到某个阶段时,都会从该阶段对应的回调队列中取出函数执行- 当队列为空或者执行的回调函数数量达到系统设定的阈值,就原创 2023-01-08 17:01:07 · 2054 阅读 · 0 评论 -
【pnpm】从了解到应用
# 包管理器简史## npm 3 之前node_modules 结构是有序的假设有如下的依赖项:```.├── package-a│ └── lodash├── package-b│ └── lodash├── package-c│ └── lodash└── package-d └── lodash```node_modules 结构如下:```node_modules├── package-a│ └── node_modules原创 2022-08-14 12:25:55 · 4241 阅读 · 0 评论 -
【Node】npm 的使用
安装 Node 的时候,会一并安装好 npm。可以在命令行执行 `npm -v` 查看 npm 的版本。# 配置 npm1. `npm config ls`:查看 npm 的配置信息;为 `npm config list` 的简写 `npm config ls -l`:查看 npm 的详细配置信息2. `npm config get `:查看 npm 指定配置项的信息 eg:`npm config get registry`-原创 2022-05-24 09:44:47 · 1041 阅读 · 0 评论 -
【node.js】处理 URL 地址
URL 类new URL(input[, base])input:要解析的 [绝对] / [相对] 的输入网址。如果 input 是相对的,则需要 base,如果 input 是绝对的,则忽略 basebase:如果 input 不是绝对的,则为要解析的基本网址const myURL = new URL('/Superman_H', 'https://blog.csdn.net');console.log(myURL.href); // https://blog.csdn.net/Superm原创 2022-05-21 12:30:16 · 555 阅读 · 0 评论 -
模块化方案:CommonJs & ESModule
# CommonJs (cjs)- cjs 是 Node 的模块化规范,使用 **`require`** & **`exports`** 进行导入导出- cjs 可作用于 **node** 环境 & **webpack** 环境,但不可作用浏览器- 如果前端项目在 webpack 中,也可以理解为浏览器和 Node 都支持 有些模块只支持 cjs,比如 ms,但并不影响它在前端项目中使用 ( 通过 webpack ) 但是,如果通过 cdn 的方式直接在浏览器中引入,则会出问题``原创 2022-09-17 22:16:48 · 812 阅读 · 0 评论 -
【Node】CommonJs(cjs)
# CommonJs- CommonJs 是 Node 的模块化规范- 在 Node 中,每个文件都是独立的模块- 在 Node 中,有一个全局**对象** global (与网页中的 window 类似) 全局作用域下创建的变量,会成为 global 的属性 全局作用域下创建的函数,会成为 global 的方法- 模块内的变量不在全局作用域中,模块存在自己的作用域(相当于在一个函数内),所以不能随意调用模块之间的变量```jslet num = 0;console.log(nu原创 2022-04-06 02:49:55 · 1911 阅读 · 0 评论 -
【Ajax】Axios 的使用
# Axios 简介Axios 是一个基于 promise 的网络请求库,可作用于 node.js 和浏览器中> #### 特性1. 支持 Promise API2. 客户端支持防御 XSRF - Cross-site request forgery - 跨站请求伪造3. 在服务端,它基于 node.js 的 `http` 模块;而在客户端 (浏览器),则基于 `XMLHttpRequests`> #### 使用1. node:下载 axios 并导入 `npm i axios`原创 2022-03-05 15:32:10 · 2042 阅读 · 0 评论 -
【node.js】MongoDB
MongoDB非关系型数据库,存储的数据都是 key-value 的形式安装数据库官网下载,然后配置环境变量即可可在小黑屏输入 mongo 连接数据库,以查看是否安装成功我们可以自己手动开关数据库:window + r → 输入 services.msc 打开任务管理器 → 找到 MongoDB 数据库,右键 启动 / 停止基本概念数据库,可以理解为一个对象表:也叫 “集合”,就是数据库对象的属性文档:就是表中的数据,即数组的一项常用命令show dbs:查询所原创 2022-05-26 16:36:01 · 315 阅读 · 0 评论 -
【node.js】mysql 模块
mysql 模块npm i mysql引入 mysql 模块:const mysql = require("mysql");创建连接对象 connection:let connection = mysql.createConnection({ host: '127.0.0.1', // 数据库的 IP 地址 port: '3306', // 端口号,默认为 3306 user: 'root', // 账号 password: '000930', // 密码原创 2021-11-24 23:00:39 · 1976 阅读 · 2 评论 -
【node.js】express
express基于 Node.js 平台的 Web 开发框架,能更便捷地搭建服务器安装 node(官网下载,无脑安装即可)进行项目初始化 npm init -y安装 express 模块:npm i express通过 express 部署服务端// 1. 引入 express 模块const express = require('express');// 2. 创建核心对象 applet app = express();// 3. 监听端口、启动服务器app.listen原创 2022-05-27 10:12:20 · 270 阅读 · 0 评论 -
【node.js】http 模块
http 模块简介核心模块 http 是 node.js 网络的关键模块,用于搭建服务器、接受请求、响应内容const http = require('http'); // 引入 http 模块http.createServer ( )创建服务器对象 - http.Server 实例:http.createServer()接收一个回调函数,回调函数带有 req、res 2 个参数:req - [请求对象],它包含了与 [客户端] 相关的数据和属性(http.ServerResponse 实例原创 2022-03-16 02:25:03 · 1346 阅读 · 0 评论 -
【NodeJS】fs 模块 (2)
# 流式文件写入 & 读取流式文件写入 / 读取适合操作**大文件**## 流式写入**① 创建可写流:`fs.createWriteStream(path[, options])`**1. `path`:文件路径2. `options`:配置对象 - `flags`:文件系统标志,默认值为 `'w'` - `encoding`:数据的编码格式,默认为 `utf8`- 返回值:WriteStream 对象```jsconst fs = requir原创 2024-02-03 22:59:10 · 1025 阅读 · 0 评论 -
【NodeJS】fs 模块 (1)
# 文件系统 fs- fs (File System) 属于 NodeJS 的核心模块,用于操作文件(夹)- 使用 fs,需要先引入该模块```jsconst fs = require('fs');```**路径问题**:- 使用相对路径时,是相对项目根目录而言的。就是说,在项目根目录不同的情况下,文件执行的结果会不一样- 开发中,尽量使用 `__dirname` 拼接路径# 操作文件## writeFile[Sync]-原创 2021-10-26 14:46:54 · 2688 阅读 · 0 评论 -
【node.js】Buffer
Buffer 简介结构上,Buffer 和 Array 很像但 Array 不能存储二进制文件(图片、视频、音乐),而 Buffer 可以在 Buffer 中,存储的都是 2 进制数据,但都用 16 进制数字显示Buffer 中的内存不是通过 JS 分配的,是在底层通过 C++ 申请的,我们可以直接通过 Buffer 来创建内存中的空间Buffer 的 1 个元素占 1 byte(8bit → 0~255 → 00~ff)创建 Buffer 实例Buffer 不需要引入模块,可以直接使用,原创 2022-05-23 11:20:07 · 277 阅读 · 0 评论