如何在NodeJs中读取文件到变量?

我对NodeJ很陌生。而且我正在尝试将文件读入变量。这是我的代码。

var fs = require("fs"),

path = require("path"),

util = require("util");

var content;

console.log(content);

fs.readFile(path.join(__dirname,"helpers","test.txt"), 'utf8',function (err,data) {

if (err) {

console.log(err);

process.exit(1);

}

content = util.format(data,"test","test","test");

});

console.log(content);

但每次我运行该脚本,我得到 undefinedundefined

我想念什么?请帮助!

回答:

正如您在问题下的注释中所述,节点是异步的-意味着当您console.log调用第二个函数时,您的函数尚未完成执行。

如果在读取文件后将日志语句移动到回调中,则应该看到输出的内容:

var fs = require("fs"),

path = require("path"),

util = require("util");

var content;

console.log(content);

fs.readFile(path.join(__dirname, "helpers", "test.txt"), 'utf8', function (err, data) {

if (err) {

console.log(err);

process.exit(1);

}

content = util.format(data, "test", "test", "test");

console.log(content);

});

即使这将解决您眼前的问题,但如果不了解节点的异步特性,您将遇到很多问题。

以上是 如何在NodeJs中读取文件到变量? 的全部内容, 来源链接: utcz.com/qa/425968.html

回到顶部