javascript - 为什么 Node.js 会查找错误作为回调中的第一个参数

标签 javascript node.js

我有以下简单的代码..但是“data”变量不返回 input.txt 的内容。

var fs = require("fs");

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

console.log("Program Ended");

下面的代码之所以有效,是因为node.js读取第一个参数,err,而input.txt内容来自第二个参数

var fs = require("fs");

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

console.log("Program Ended");

这只是一个node.js 的东西来查找第一个参数中的错误吗?如果我不想检查回调函数中的错误怎么办?

最佳答案

按照惯例,将错误作为第一个参数传递给回调函数。首先要防止它被忽视。当然,您不必检查它,但如果出现错误,那么您的数据很可能是坏的或毫无意义的。

fs.readFile('input.txt', function (data) { 不起作用的原因是错误被传递到您的 data 变量中,因为它是第一个参数。您实际命名参数的名称并不重要,参数顺序由 fs.readFile 决定。

关于javascript - 为什么 Node.js 会查找错误作为回调中的第一个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35247963/

相关文章:

javascript - CKeditor 不更新源代码模式下的文本区域

javascript - 关闭 ionic 页面并到达上一页,构造函数不起作用

javascript - 尝试将来自 node.js http 服务器的文本拆分为单词数组进行响应

node.js - 在 LoopBack 4 中迁移数据库后设置新字段的值

javascript - 从 JavaScript 中的 Instagram API 获取总点赞和评论

Javascript 排序以匹配 SQL Server 排序

javascript - Uncaught ReferenceError : showTechnical is not defined

javascript - 使用 Typescript+VSCode 调试 Node.js 异步/等待

javascript - DiscordJS 数据库未理想地存储信息

node.js - Systemd + NPM 启动