初识Node.js与内置模块

  • 能够知道什么是 Node.js
  • 能够知道 Node.js 可以做什么
  • 能够说出 Node.js 中的 JavaScript 的组成部分
  • 能够使用 fs 模块读写操作文件
  • 能够使用 path 模块处理路径
  • 能够使用 http 模块写一个基本的 web 服务器

一.初识Node.js

1.浏览器中的 JavaScript 的组成部分

2.Node.js 简介

1).什么是 Node.js

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。

Node.js 的官网地址: https://nodejs.org/zh-cn/

2).Node.js 中的 JavaScript 运行环境 :

注意:

① 浏览器是 JavaScript 的前端运行环境。

② Node.js 是 JavaScript 的后端运行环境。

③ Node.js 中无法调用 DOM 和 BOM 等浏览器内置 API。

3).Node.js 可以做什么

Node.js 作为一个 JavaScript 的运行环境,仅仅提供了基础的功能和 API。然而,基于 Node.js 提供的这些基础能,很多强大 的工具和框架如雨后春笋,层出不穷,所以学会了 Node.js ,可以让前端程序员胜任更多的工作和岗位:

3.Node.js 环境的安装

1.如果希望通过 Node.js 来运行 Javascript 代码,则必须在计算机上安装 Node.js 环境才行。

安装包可以从 Node.js 的官网首页直接下载,进入到 Node.js 的官网首页(https://nodejs.org/en/),点击 绿色的按钮,下载所需的版本后,双击直接安装即可。

  1. 查看已安装的 Node.js 的版本号

打开终端,在终端输入命令 node --v 后,按下回车键,即可查看已安装的 Node.js 的版本号。

Windows 系统快速打开终端的方式:

使用快捷键(Windows徽标键 + R)打开运行面板,输入 cmd 后直接回车,即可打开终端。

4.在 Node.js 环境中执行 JavaScript 代码

① 打开终端 ② 输入 node 要执行的js文件的路径

1.终端中的快捷键

在 Windows 的 powershell 或 cmd 终端中,我们可以通过如下快捷键,来提高终端的操作效率:

  • 找到shift键 然后右击然后点击下面得使用powershell 打开
  • ① 使用 ↑ 键,可以快速定位到上一次执行的命令
  • ② 使用 tab 键,能够快速补全路径
  • ③ 使用 esc 键,能够快速清空当前已输入的命令
  • ④ 输入 cls 命令,可以清空终端

二.fs 文件系统模块

1.fs 文件系统模块

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

例如:

⚫ fs.readFile() 方法,用来读取指定文件中的内容

⚫ fs.writeFile() 方法,用来向指定的文件中写入内容

如果要在 JavaScript 代码中,使用 fs 模块来操作文件,则需要使用如下的方式先导入它:

2.读取指定文件中的内容

1). fs.readFile() 的语法格式

使用 fs.readFile() 方法,可以读取指定文件中的内容,语法格式如下:

参数解读:

⚫ 参数1:必选参数,字符串,表示文件的路径。

⚫ 参数2:可选参数,表示以什么编码格式来读取文件。

⚫ 参数3:必选参数,文件读取完成后,通过回调函数拿到读取的结果。

2). fs.readFile() 的示例代码

以 utf8 的编码格式,读取指定文件的内容,并打印 err 和 dataStr 的值:

首先要在文件里新建一个文件夹files,在files目录下新建一个文件1.txt.然后在与文件夹filtes同一目录下创建js文件

javascript 复制代码
// 1.导入fs模块,来操作文件
const fs = require('fs')

// 2.调用 fs.readlines()方法读取文件
// 参数1:读取文件的存放路径
// 参数2:读取文件时候采用的编码格式,一般默认指utf8
// 参数3:回调函数,拿到读取失败和成功的结果 err dataStr
fs.readFile('./files/1.txt','utf8',function(err,dataStr){
    // 2.1打印失败的结果
    // 如果读取成功,则err的值为null,dataStr的值为文件里面的内容
    // 如果读取失败,则err的值为错误对象,dataStr的值为undefined
    console.log(err)
    console.log('----------')
    // 打印成功的结果
    console.log(dataStr)
3). 判断文件是否读取成功

可以判断 err 对象是否为 null,从而知晓文件读取的结果:

javascript 复制代码
const fs = require('fs')

fs.readFile('./files/1.txt','utf8',function(err,dataStr){
if (err){
        return console.log('读取文件失败'+err.message)
    }
    console.log('读取文件成功!'+dataStr)
})

3.向指定的文件中写入内容

1).fs.writeFile() 的语法格式

使用 fs.writeFile() 方法,可以向指定的文件中写入内容,语法格式如下:

参数解读:

⚫ 参数1:必选参数,需要指定一个文件路径的字符串,表示文件的存放路径。

⚫ 参数2:必选参数,表示要写入的内容。

⚫ 参数3:可选参数,表示以什么格式写入文件内容,默认值是 utf8。

⚫ 参数4:必选参数,文件写入完成后的回调函数。

2). fs.writeFile() 的示例代码

向指定的文件路径中,写入文件内容:

3). 判断文件是否写入成功

可以判断 err 对象是否为 null,从而知晓文件写入的结果:

相关推荐
用户6122716650244 小时前
电费 9 毛/天:我让一台 9 年前的旧 MacBook 替我上班,它比入门云服务器还能打
node.js
PegasusYu5 小时前
Node.js使用nedb轻量级数据库测试脚本
数据库·electron·node.js·脚本·测试·轻量级·nedb
WebInfra7 小时前
Rsdoctor 2.0 发布:Agent 驱动的全自动优化工具
前端·javascript·node.js
DevUp20 小时前
标着 JavaScript 的 Wiki 与知识库:既不是 CMS 也不是 SSG(番外三)
javascript·node.js·cms
毕业设计7031 天前
(免费领源码)基于node的学生公寓管理系统06412- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
vue.js·mysql·node.js·maven·mybatis·express·b/s
damoluomu1 天前
SSG 的后台怎么补:Node.js 生态里的三条路(番外二)
javascript·css·typescript·node.js·html
花开富贵城1 天前
使用fnm安装node.js包管理器
node.js
濮水大叔2 天前
NestJS Dynamic Providers 与 Cabloy/Vona Provider Scene:同接口多实现的两种装配哲学
typescript·node.js·nestjs
silvamux_2 天前
Node.js 调用大模型 API 排错实录
node.js
Amumu121382 天前
NodeJs介绍
前端·node.js