(二)Node.js 基础模块

这篇具有很好参考价值的文章主要介绍了(二)Node.js 基础模块。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. fs文件系统模块

1.1 什么是fs文件系统模块

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

例如:

  • fs.readFile()方法,用于读取指定文件中的内容
  • fs.writeFile()方法,用于向指定的文件中写入内容

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

const fs = require('fs')

1.2 读取指定文件中的内容

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

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

fs.readFile(path[, options], callback)

参数解读:

  1. 参数1:必选参数,字符串,表示文件路径
  2. 参数2:可选参数,表示以什么编码格式读取文件
  3. 参数3:必选参数,文件读取完成后,通过回调函数拿到读取结果
2. fs.readFile()的示例代码

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

 const fs = require('fs')
 fs.readFile('./11.txt', 'utf8', function(err, dataStr){
	console.log(err)
	console.log('-----')
	console.log(dataStr)
})

1.3 向指定的文件中写入内容

1. fs.writeFile()的语法格式
fs.writeFile(file, data[, options], callback)
2. fs.writeFile()的实例代码
const fs = require('fs')
fs.writeFIle('./files/2.txt', 'Hello Node.js!', function(err){
	if(err){
		return console.log('文件写入失败!' + err.message)
	}
	console.log('文件写入成功!')
})

1.4 __dirname 表示当前文件所处的目录

可用于解决拼接文件绝对路径问题

// test.js
console.log(__dirname)

2. path路径模块

path模块是Node.js官方提供的、用于处理路径的模块。它提供了一系列的方法和属性,用来满足用户对路径的处理需求。

例如:

  • path.join()方法,用来将多个路径片段拼接成一个完整的路径字符串
  • path.basename()方法,用来从路径字符串中,将文件名解析出来

如果要在JavaScript代码中,使用path模块来处理路径,则需要使用如下的方式先导入它:

const path = require('path')

2.1 路径拼接

1. path.join()的语法格式

使用path.join()方法,可以把多个路径片段拼接位完整的路径字符串,语法格式如下:

path.join([...paths])

参数解读:

  • …paths <string> 路径片段的序列
  • 返回值:<string>
2. path.join()的代码示例

使用path.join()方法,可以吧多个路径片段拼接位完整的路径字符串:

const path = require('path')
const pathStr = path.join('/a', '/b/b', '../', '/d', 'e')
console.log(pathStr) //输出 /a/b/d/e

const pathStr2 = path.join(__dirname, './files/demo.txt')
console.log(pathStr2) //输出 当前文件所处目录/files/1.txt

2.2 获取路径中的文件名

1. path.basename()的语法格式

使用path.basename()方法,可以获取路径中的最后一部分,经常通过这个方法获取路径中的文件名,语法格式如下:

path.basename(path[, ext])

参数解读:

  • path <string> 必选参数,表示一个路径的字符串
  • ext <string> 可选参数,表示文件扩展名
  • 返回:<string> 表示路径中的最后一部分
2. path.basename()的代码示例

使用path.basename()方法,可以从一个文件路径中,获取到文件的名称部分:

const fpath = '/a/b/c/index.html'

var fullName = path.basename(fpath) //输出 index.html
console.log(fullName)

var nameWithoutExt = path.basename(fpath, '.html')
console.log(nameWithoutExt)  //输出 index

2.3 获取路径中的文件扩展名

1. path.extname()的语法格式

使用path.extname()方法,可以获取路径中的扩展名部分,语法格式如下:

path.extname(path)
2. path.extname()的代码示例
const path = require('path')
const fpath = '/a/b/c/index.html'
const fext = path.extname(fpath)
console.log(fext)  //输出 .html

3. http模块

http模块是Node.js官方提供的、用来创建web服务器的模块。通过http模块提供的http.createServer()方法,就能方便的把一台普通的电脑,编程一台web服务器,从而对外提供Web资源服务。

3.1 创建最基本的web服务器

步骤:

  1. 导入http模块
  2. 创建web服务器实例
  3. 为服务器实例绑定request时间,监听客户端的请求
  4. 启动服务器

导入模块:文章来源地址https://www.toymoban.com/news/detail-633010.html

//1. 导入模块
const http = require('http')
//2. 调用http.createServer()方法,即可快速创建一个web服务器实例
const server = http.createServer()
//3. 绑定request事件,监听网络请求
server.on('request', (req, res) => {
	//只要有客户端请求我们自己的服务器,就会触发request事件
	console.log('Someone visit our web server.')
})
//4.调用服务器实例的.listen()方法,启动80端口
server.listen(80, () => {
	console.log('http server running at http://127.0.0.1')
})

3.2 根据不同url响应不同的html内容

动态响应内容
server.on('request', (req, res) => {
	const url = req.url
	let content = '<h1>404 Not found!</h1>'
	if (url === '/' || url === '/index.html'){
		content = '<h1>首页</h1>'
	}else if (url === '/about.html') {
		content = '<h1>关于页面</h1>'
	}
	res.setHeader('Content-Type', 'text/html; charset=utf-8')
	res.end(content)
})

到了这里,关于(二)Node.js 基础模块的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Node.js--fs模块

    fs模块的全称为 file system ,称之为 文件系统 ,是Node.js中的 内置模块 ,可以对计算机中的磁盘进行操作。 文件写入就是将 数据 保存到 文件 中,我们可以使用如下几个方法来实现该效果 方法 说明 writeFile 异步写入 writeFileSync 同步写入 appendFile/appendFileSync 追加写入 createWri

    2024年02月12日
    浏览(21)
  • Node.js模块的导出

    在Node.js中, module.exports 和 exports 是两种导出模块的方式,它们的作用是使得模块中的内容可以被其他模块引用和使用。 module.exports : module.exports 是一个指向当前模块所导出内容的对象的引用。你可以通过给 module.exports 赋值来导出一个对象、函数、类或者任何其他的JavaScrip

    2024年04月14日
    浏览(6)
  • 【Node.js】querystring 模块

    parse stringify escape/unescape 传入参数在 escape 包装下可以将参数中的有特殊字符进行转义,防止 sql 注入。

    2024年02月07日
    浏览(22)
  • Node.js--模块化

    1.1 什么是模块化与模块 将一个复杂的程序文件依据一定规则(规范)拆分成多个文件的过程称之为 模块化 其中拆分出的 每个文件就是一个模块 ,模块的内部数据都是私有的,不过模块可以暴露内部数据以便其他模块使用 1.2 什么是模块化项目 编码时是按照模块一个一个编码

    2024年02月16日
    浏览(20)
  • Node.js模块化

    说明:将复杂的程序文件,拆分多个文件的过程。模块的内部数据是私有的,不过模块可以暴露内部数据供其他模块使用。 说明:编码时是按照模块一个一个编码的,整个项目就是一个模块化的项目。 3.模块化的优势 说明: 提高代码的复用性:模块化可以将代码分解为可重

    2024年02月12日
    浏览(10)
  • (三)Node.js - 模块化

    (三)Node.js - 模块化

    Node.js中根据模块来源不同,将模块分为了3大类,分别是: 内置模块 :内置模块由Node.js官方提供的,例如fs、path、http等 自定义模块 :用户创建的每个.js文件,都是自定义模块 第三方模块 :由第三方开发出来的模块,并非官方提供的内置模块,也不是用户创建的自定义模块

    2024年02月13日
    浏览(9)
  • node.js的http模块

    node.js的http模块

    http协议 :超文本传输协议(互联网应用最广泛的协议之一) http请求方法: get获取数据 post新增数据 put/patch更新数据 delete删除数据 head/options/connect/trace URL 统一资源定位符,其本身也是一个字符串。 在网络节点中,负责消费资源的电脑,叫做客户端。 负责对外提供网络资源

    2024年02月08日
    浏览(36)
  • 【node.js】03-http模块

    【node.js】03-http模块

    目录 一、什么是http模块 二、创建基本的WEB服务器 三、req请求对象 四、res响应对象 五、根据不同的url响应不同的JSON内容         http 模块是 Node.js 官方提供的、用来创建 web 服务器的模块。通过 http 模块提供的 http.createServer() 方法,就能方便的把一台普通的电脑,变成一

    2024年02月15日
    浏览(93)
  • 10-Node.js模块化

    10-Node.js模块化

    目标 了解模块化概念和好处,以及 CommonJS 标准语法导出和导入 讲解 在 Node.js 中每个文件都被当做是一个独立的模块,模块内定义的变量和函数都是独立作用域的,因为 Node.js 在执行模块代码时,将使用如下所示的函数封装器对其进行封装 ​ 而且项目是由多个模块组成的,

    2024年02月07日
    浏览(8)
  • 【node.js】04-模块化

    【node.js】04-模块化

    目录 一、什么是模块化 二、node.js中的模块化 1. node.js中模块的分类 2. 加载模块 3. node.js 中的模块作用域 4. 向外共享模块作用域中的成员 4.1 module对象  4.2 module.exports 对象 4.3 exports对象 5. node.js 中的模块化规范          模块化是指解决一个复杂问题时,自顶向下逐层

    2024年02月15日
    浏览(8)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包