2.fs模块对计算机硬盘进行读写操作(Promise进行封装)

1.回调函数形式:读取resource文件夹下的 1.txt 文件

  1. 首先是引进 fs模块 ,利用Node.js提供的全局函数 require用于加载 Node.js内置的模块fs。(在Node.js环境中,代码通常不是写在一个文件中,而是分成多个特定功能模块,比如处理文件、网络请求、加密。通过require可以引入别人写好的模块,该模块可以是Node.js中内置的或第三方或是自己写的模块)

  2. fs对目标文件进行读取,(readFile,writeFlie,deleteFile),第一个参数是目标文件的路径,第二个参数是回调函数。其中err是出现错误时的参数,data是读取的结果。如果有err,则是出错了,throw err抛出错误;否则直接输出文件内容,toString()方法将Buffer(二进制文件)变成能看懂的字符串-----英文/中文。

  3. 直接在 vscode 终端执行 node 命令 运行 js 文件。

    JavaScript 最初是运行在浏览器中的,负责网页交互,由浏览器内置的 JavaScript 引擎(比如 Chrome 的 V8、Firefox 的 SpiderMonkey)来解析和执行。后来,随着 Node.js 的出现,JavaScript 也可以运行在服务器和命令行中,Node.js 是一个基于 V8 引擎的 JavaScript 运行时环境,它让 JavaScript 成为全栈开发语言。

    --
    Python 是一门通用编程语言,从一开始就广泛应用于服务端开发、脚本、数据分析、人工智能等领域。Python 代码依靠 Python 解释器(最常用的是 CPython)来解析和执行,CPython 是官方的、最主流的 Python 运行环境。

    总结:引进 fs 模块,读取文件,回调函数

javascript 复制代码
//1.回调函数形式
// 引进fs模块
const fs = require('fs')
// readFile方法读取fs,第一个参数为目标文件的路径,第二个参数加上回调(err为出现错误时的参数,data是读取的结果)
fs.readFile('./resource/1.txt',(err,data) => {
  // 如果(有err)出错,则抛出错误
  if(err) throw err
  // 输出文件内容
  console.log(data.toString())
})

2.promise进行封装:读取resource文件夹下的 1.txt文件

javascript 复制代码
// 2.使用 promise形式进行封装
const fs = require('fs')
let p = new Promise((resolve,reject) =>{
  fs.readFile('./resource/1.txt',(err,data) =>{
    // 出错
    if(err) reject(err)
    resolve(data)
  })
})

// 调用 .them方法
p.then(value=>{
  console.log(value.toString())
},reason=>{
  console.log(reason)
})
相关推荐
北极糊的狐20 小时前
Vue3 子组件修改父组件传递的对象并同步的方法汇总
前端·javascript·vue.js
Zyx200720 小时前
JavaScript 作用域与闭包(下):闭包如何让变量“长生不老”
javascript
u***j32420 小时前
JavaScript在Node.js中的进程管理
开发语言·javascript·node.js
用户479492835691520 小时前
javascript新进展你关注了吗:TC39 东京会议带来五大新特性
javascript
北极糊的狐1 天前
父组件向子组件传参时,传递数组和对象类型的参数的方法
前端·javascript·vue.js
一颗不甘坠落的流星1 天前
【HTML】iframe 标签 allow 权限汇总(例如添加复制粘贴权限)
前端·javascript·html
forestsea1 天前
现代 JavaScript 加密技术详解:Web Crypto API 与常见算法实践
前端·javascript·算法
骑自行车的码农1 天前
🍂 React DOM树的构建原理和算法
javascript·算法·react.js
北极糊的狐1 天前
Vue3 中父子组件传参是组件通信的核心场景,需遵循「父传子靠 Props,子传父靠自定义事件」的原则,以下是资料总结
前端·javascript·vue.js
看到我请叫我铁锤1 天前
vue3中THINGJS初始化步骤
前端·javascript·vue.js·3d