我有以下简单的代码..但是“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/