一聚教程网:一个值得你收藏的教程网站

热门教程

node.js文件系统模块和两个重要模块代码示例

时间:2022-06-29 01:45:45 编辑:袖梨 来源:一聚教程网

本篇文章小编给大家分享一下node.js文件系统模块和两个重要模块代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。

一、node.js文件系统模块

node.js

javascript之所以能够被浏览器执行是因为有javascript的解析引擎的作用,而不同的浏览器使用不同的JavaScript的解析引擎,Chrome浏览器使用的v8解析引擎,体验最好,浏览器内置dom和bom的api函数,JavaScript可以调用这些函数来完成相应的功能

node.js是JavaScript的运行环境,通过这个运行环境可以使用JavaScript做后端开发,通过nodejs的官网我们可以了解到Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时,也就是说它是JavaScript的运行环境。

nodejs和浏览器都是JavaScript的运行环境,一个是前端环境,一个是后端环境,显然,nodejs是无法使用浏览器的内置api的

fs文件系统

fs文件系统模块是node.js的内置模板,顾名思义可以对文件进行操作

通过const fs = require('fs')来引入fs文件系统模块,

读取文件

然后我们读文件的时候代码如下:

fs.readFile('11.txt', 'utf8', function(err, dataStr) {
  console.log(err) 
  console.log(dataStr)
})

这里就要说一下了readFile函数就是读取文件的函数,它有三个参数,第一个参数表示读取的文件,第二个参数表示文件字符编码,第三参数就是读取完了之后的回调函数,function是失败是第一个参数,成功的话参数值是null,成功是第二个参数,参数值就是读到的内容,可以根据err参数值是否为null来判断文件是否读取成功,

写入文件

写入文件同样也要先引入文件系统,然后调用的函数为

fs.writeFile('2.txt', 'hellonodejs', function(err) {
  if (err) {
    return console.log('文件写入失败!' + err.message)
  }
  console.log('文件写入成功!')
})

writeFile有四个参数,第一个参数就是要写入的文件,第二个参数文本内容,第三个参数是编码方式,默认是utf-8,第四个参数是回调函数。如果写入成功回调的函数参数err值为null,可以以此来判断写入是否成功。

总结:介绍了nodejs是JavaScript的后端运行环境,并对node.js的fs文件系统模块做了简单的介绍

二、node.js的两个重要模块

今天介绍一下node.js的两个重要的模块:path路径模块和http模块

path路径模块

node.js的fs文件模块的文件目录会根据nodejs所在目录动态拼接,而使用 __dirname 这变量就表示当前文件所在的目录

path路径模块同样是node.js提供的模块,显然它是用来处理文件路径相关的操作的,使用的话同样要先引入 const path = require('path') ,然后就可以使用path.join方法来实现文件路径的拼接

通过 path.basename('文件路径')可以获取文件名,这里包含扩展名,如果不想要扩展名的话可以使用path.basename('文件路径','文件扩展名') 来实现,如果只想获取扩展名呢?可以使用 path.extname('文件路径')

http模块

http模块同样是node.js提供的模块,它可以用来创建web服务器

具体使用方法同样也是先引入const http = require('http') ,然后使用const server = http.createServer() 来创建web服务器的实例,第三步就是服务器绑定request事件,监听客户端的请求,具体代码:

server.on('request', function (req, res) {
  console.log('客户端访问服务端')
})

req请求对象中包含了一些客户端的信息,比如客户端的url和请求类型,可以桶req.url 和req.method进行获取,通过req.end() 可以响应客户端内容

通过 res.setHeader('Content-Type', 'text/html; charset=utf-8') 解决响应给客户端的中文乱码的问题

最后一步就是启动服务器了:

server.listen(8080, function () {  
  console.log('服务器已启动')
})

服务器占用的端口是8080

总结:介绍path路径模块和http网络服务模块,path路径模块主要是针对文件路径进行处理,通过join方法拼接文件路径,通过basename方法可以获取文件名等等。http模块在使用的时候主要有四部,第一步引入http模块,第二步创建服务器实例,第三步绑定request事件,第四步启动服务器。

热门栏目