web学习笔记(四十五)Node.js

2024-03-26 22:28
文章标签 学习 笔记 web js node 四十五

本文主要是介绍web学习笔记(四十五)Node.js,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1. Node.js

1.1 什么是Node.js

1.2 为什么要学node.js

1.3  node.js的使用场景

1.4 Node.js 环境的安装

1.5 如何查看自己安装的node.js的版本

1.6 常用终端命令

2. fs 文件系统模块

2.1引入fs核心模块

2.2 读取指定文件的内容

2.3  向文件写入指定内容

2.4 创建文件夹 

2.5 判断文件夹是否存在 access accessSync

2.6 删除文件夹 rmdir rmdirSync

2.7 拷贝文件 copyFile copyFileSync

2.8 修改文件名称rename  renameSync

2.9 向文件中追加内容appendFlie appendFlieSync

2.10  删除文件 unlink  unlinkSync


1. Node.js

1.1 什么是Node.js

Node.js是一个开源、跨平台的JavaScript运行时环境。  Node.js内置v8引擎(谷歌研发的引擎)。需要注意的是:浏览器是JavaScript的前端运行环境,node.js是JavaScript的后端运行环境,因此node.js中无法调用dom和bom等浏览器内置的api。

Node.js 的官网地址: https://nodejs.org/zh-cn/icon-default.png?t=N7T8https://nodejs.org/zh-cn/

 

1.2 为什么要学node.js

  1.  node.js目前是很多前端技术的底层语言,基于这些功能,很多工具和框架层出不穷(vue  react-cli)。
  2.  nopde.js是一种可以使用js编写的后端语言。
  3.  node.js是前端工程师的一个加分项。

1.3  node.js的使用场景

1.4 Node.js 环境的安装

       如果希望通过 Node.js 来运行 Javascript 代码,则必须在计算机上安装 Node.js 环境才行。安装包可以从 Node.js 的官网首页直接下载,进入到 Node.js 的官网首页(Node.js — Run JavaScript Everywhere),点击绿色的按钮,下载所需的版本后,双击直接安装即可。推荐使用LTS 为长期稳定版,Current 为新特性尝鲜版,可能会比稳定版多一些功能,但是也会存在隐藏的bug。

  1. 搭建web服务器:Node.js 可以用于构建高性能的 Web 服务器。由于其非阻塞I/O和事件驱动的特性,使得它很适合处理大量并发请求。
  2.  作为中间件服务:API 网关、身份验证和授权中间件、缓存中间件
  3. 后端开发:Node.js 可以作为后端技术栈的一部分,用于构建 RESTful API、处理数据库操作、进行身份验证等任务。

  4. 实时应用程序:Node.js 对于需要实时数据交换的应用程序非常有用,比如在线聊天应用、多人协作工具等。

  5. 微服务架构:Node.js 可以作为微服务架构中的一个组件,每个微服务都可以使用 Node.js 来构建。

  6. 工具开发:Node.js 可以用于开发各种工具和脚本,比如构建工具、自动化测试工具、命令行工具等。

  7. 数据流处理:Node.js 在处理大量数据流时表现出色,比如日志处理、文件上传等场景。

1.5 如何查看自己安装的node.js的版本

  1.  window+R --- 运行cmd---  打开终端---输入node -v,然后按下回车。
  2.  在文件上右击---在文件资源管理器中显示---在地址栏中输入cmd,回车---输入node -v,然后按下回车。
  3.  在文件上右击--在集成终端打开---输入node -v,然后按下回车。

1.6 常用终端命令

  • 使用 ↑ 键,可以快速定位到上一次执行的命令
  • 使用 tab 键,能够快速补全路径
  • 使用 esc 键,能够快速清空当前已输入的命令
  • 输入 cls 命令,可以清空终端

2. fs 文件系统模块

fs 模块是 Node.js 官方提供的、用来操作文件的模块。它提供了一系列的方法和属性,用来满足用户对文件的操作需求。

2.1引入fs核心模块

let fs = require('fs');
console.log(fs);

在 fs 文件系统模块每个操作都是分为异步和同步两种方式,在异步单词的后面加上Sync就是同步操作,在进行同步操作时推荐将代码写入try{}catch{}中,这样即使代码出错也不会影响下面代码的执行。

2.2 读取指定文件的内容

(1) fs.readFile异步读取  (有回调函数的都是异步操作),里面包含三个参数:

 url地址  必选
编码格式utf-8   可选
回调函数错误优先判断(优先判断是否错误)
fs.readFile('./flie/1.txt', (err, data)=>{if (err) return console.log('读取失败' + err.message);console.log(data.toString());
})//或者下面的这种格式,二选一fs.readFile('./flie/1.txt', 'utf-8', (err, data) => {if (err) return console.log('读取失败' + err.message);console.log(data);
})

(2) 同步读取操作   fs.readFileSync()    

let data = fs.readFileSync('./flie/1.txt', 'utf-8');
console.log(data);

2.3  向文件写入指定内容

(1)异步写入  fs.writeFile(),有四个参数:

文件路径 必选
要写入的内容必选  必须是字符串
表示以书名格式写入文件内容默认值是utf-8  可选
回调函数有一个参数  err(错误参数)
fs.writeFile('./flie/1.txt', '啊啊啊', (err) => {// 错误优先if (err) {return console.log('写入失败'+err.message);}console.log('写入成功');
})

(2)同步写入  fs.writeFileSync

 fs.writeFileSync('./flie/1.txt', '下午好');

2.4 创建文件夹 

(1)异步:mkdir

fs.mkdir('yi', (err) => {if (err) return console.log('创建文件夹失败' + err.message);console.log('创建文件夹成功');
});

(2)同步: mkdirSync

try {fs.mkdirSync('er')
} catch (err) {console.log('创建文件夹失败' + err.message);
}

2.5 判断文件夹是否存在 access accessSync

fs.access('er', err => {if (err) return console.log('这个文件夹不存在');console.log('文件夹存在');
})

2.6 删除文件夹 rmdir rmdirSync

fs.rmdir('er', err => {if (err) return console.log('删除失败' + err.message);console.log('删除成功');
})

2.7 拷贝文件 copyFile copyFileSync

fs.copyFile('./flie/1.txt', './yi/2.txt', (err) => {if (err) return console.log('拷贝失败');console.log('拷贝成功');
})

2.8 修改文件名称rename  renameSync

try {fs.renameSync('./yi/2.txt', './yi/1.txt');
} catch {console.log('重命名失败');
}

2.9 向文件中追加内容appendFlie appendFlieSync

try {fs.appendFileSync('./yi/1.txt','\n晚上好')
} catch {console.log('追加失败');
}

2.10  删除文件 unlink  unlinkSync

try {fs.unlinkSync('./er/1.txt')
} catch {console.log('删除失败');
}

这篇关于web学习笔记(四十五)Node.js的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/850055

相关文章

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

JSON Web Token在登陆中的使用过程

《JSONWebToken在登陆中的使用过程》:本文主要介绍JSONWebToken在登陆中的使用过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录JWT 介绍微服务架构中的 JWT 使用结合微服务网关的 JWT 验证1. 用户登录,生成 JWT2. 自定义过滤

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

nvm如何切换与管理node版本

《nvm如何切换与管理node版本》:本文主要介绍nvm如何切换与管理node版本问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录nvm切换与管理node版本nvm安装nvm常用命令总结nvm切换与管理node版本nvm适用于多项目同时开发,然后项目适配no

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

web网络安全之跨站脚本攻击(XSS)详解

《web网络安全之跨站脚本攻击(XSS)详解》:本文主要介绍web网络安全之跨站脚本攻击(XSS)的相关资料,跨站脚本攻击XSS是一种常见的Web安全漏洞,攻击者通过注入恶意脚本诱使用户执行,可能... 目录前言XSS 的类型1. 存储型 XSS(Stored XSS)示例:危害:2. 反射型 XSS(Re

Node.js net模块的使用示例

《Node.jsnet模块的使用示例》本文主要介绍了Node.jsnet模块的使用示例,net模块支持TCP通信,处理TCP连接和数据传输,具有一定的参考价值,感兴趣的可以了解一下... 目录简介引入 net 模块核心概念TCP (传输控制协议)Socket服务器TCP 服务器创建基本服务器服务器配置选项服

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

前端原生js实现拖拽排课效果实例

《前端原生js实现拖拽排课效果实例》:本文主要介绍如何实现一个简单的课程表拖拽功能,通过HTML、CSS和JavaScript的配合,我们实现了课程项的拖拽、放置和显示功能,文中通过实例代码介绍的... 目录1. 效果展示2. 效果分析2.1 关键点2.2 实现方法3. 代码实现3.1 html部分3.2

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操