回调是一个异步等效的功能。在完成特定任务回调函数被调用。 Node大量使用了回调。Node的所有的API都支持回调这样的一种方式。
//阻塞代码
创建一个txt文件。input.txt
Hello This is learning node js input.
Just so so !!!!
创建js文件代码如下
var fs=require("fs");
var data=fs.readFileSync('input.txt');
console.log(data.toString());
console.log("Main Program ended");
此处是同步效果,先执行读文件,然后将数据输出,并结束当前程序
//非阻塞代码,异步执行效果
修改js代码:
var fs=require("fs");
//var data=fs.readFileSync('input.txt');
//console.log(data.toString());
fs.readFile('input.txt',function (error,data){
if(error) return console.error(error);
console.log(data.toString());
});
console.log("Main Program ended");
执行结果:
可以看出 程序不等读取文件结束继续执行打印出'Main Program ended'.
删除input文件:执行