node.js回调函数

node.js异步编程的直接提现就是回调。我们可以异步读取文件,读取文件完成后,将文件作为回调参数返回,这样就不会阻塞程序,可以处理大量的并发请求。
废话不多说,先来一个阻塞代码的实例。首先创建一个txt的文档,随意输入点什么,我输入的是“你好吗”三个字,这里就不创建了。
然后创建main.js文件,代码如下:

var fs=require('fs');
var data=fs.readFileSync('input.txt');
console.log(data.toString());
console.log("程序执行结束!");

在vim执行,
$ node main.js
你好吗?
程序执行结束!

再来一个非阻塞代码实例:
创建main.js文件,内容如下:

var fs=require("fs");
fs.readFile('input.txt',function (err,data) {
if (err) return console.error(err);
console.log(data.toString());
 })
console.log("程序执行结束!");

第一个实例是必须文件读取完才能执行程序,第二个是不需要等待文件读取完。因此,阻塞是按顺序执行的,而非阻塞是不需要按顺序的

你可能感兴趣的:(node.js回调函数)