当前位置: 首页 > article >正文

nodeJS 系统学习-章节4-回调函数

在 Node.js中
回调函数是一种 常见的异步编程 模式。回调函数 通常作为参数 传递给其他函数
并在某个操作完成时被调用。

以下是一个简单的示例,演示了如何在
Node.js 中使用回调函数:

// readFileExample.js

const fs = require('fs');

// 定义一个回调函数来处理文件内容
function handleFileContent(err, data) {
  if (err) {
    console.error('读取文件时发生错误:', err);
    return;
  }
  console.log('文件内容:', data.toString());
}

// 使用 fs.readFile 异步读取文件,并传递回调函数
fs.readFile('example.txt', 'utf-8', handleFileContent);

//打印结果,example.txt 文件不存在的基础上
读取文件时发生错误: [Error: ENOENT: no such file or directory, open 'D:\my-app\example.txt'] {
  errno: -4058,
  code: 'ENOENT',
  syscall: 'open',
  path: 'D:\\my-app\\example.txt'
}

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,
它使得 JavaScript 可以脱离浏览器运行在服务器端。

Node.js 的核心特性之一是其非阻塞 I/O(输入/输出)模型
这使得 Node.js 非常适合处理高并发的网络应用。

Node.js 异步编程的直接体现就是回调。

下面的例子就是很好的证明,你会发现在事件循环中(Event Loop)先执行主线程,其次是执行了异步操作的回调函数

var fs = require("fs");

fs.readFile('input.txt', function (err, data) {
    if (err) return console.error(err);
    console.log(data.toString());
});

console.log("程序执行结束!");
// 打印结果
程序执行结束!
[Error: ENOENT: no such file or directory, open 'D:\my-app\input.txt'] {
  errno: -4058,
  code: 'ENOENT',
  syscall: 'open',
  path: 'D:\\my-app\\input.txt'
}

http://www.kler.cn/a/525086.html

相关文章:

  • MySQL备忘录
  • Windows11无法打开Windows安全中心主界面
  • 算法的时间复杂度
  • 乌兰巴托的夜---音乐里的故事
  • 深入理解Pytest中的Setup和Teardown
  • DeepSeek能够进行逻辑推理吗?
  • 图片上传实现图片预览的功能
  • 浏览器同源策略:从“源”到安全限制的全面解析
  • 【力扣每日一题】存在重复元素 II 解题思路
  • C ++ 1
  • SpringCloudGateWay和Sentinel结合做黑白名单来源控制
  • 计算机的错误计算(二百二十五)
  • gesp(C++六级)(6)洛谷:P10109:[GESP202312 六级] 工作沟通
  • C++ ——— 仿函数
  • 【2024年华为OD机试】(B卷,100分)- 模拟消息队列 (JavaScriptJava PythonC/C++)
  • FreeRTOS从入门到精通 第十三章(信号量)
  • Linux 信号驱动IO
  • 基于Springboot的健身房管理系统【附源码】
  • es6中关于let的使用以及案例,包括但不限于块级作用域,不允许重复声明,没有变量提升,暂存性死区,不与顶层对象挂钩
  • [SUCTF 2018]MultiSQL1
  • 微博热搜时光机逆向(js逆向)
  • 【力扣系列题目】最后一块石头的重量 分割回文串 验证回文串 等差数列划分{最大堆 背包 动态规划}
  • SSM总结
  • SpringBoot项目创建
  • 10.6.4 Json文件操作
  • RocketMQ原理—4.消息读写的性能优化