手记

关于Node.js的回调函数

Node.Js异步编程的直接表现方式就是回调。异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了。回调函数在完成任务后就会被调用,Node使用了大量的回调函数,node所有api都支持回调函数。比如,我们在操作文件的时候,可以一边读取文件,一边执行其他的命令,在读取文件完成后,我们将文件内容作为回调函数的参数返回,这样在执行代码时就没有阻塞或等待文件I/O操作,这就大大提高了Node.js的性能,可以处理大量的并发请求。

一个例子

有一个叫做test.txt的文件,内容如下:

Hello my callback world

阻塞代码

创建一个读取文件的readfile.js文件,代码如下:

 

执行

非阻塞代码

代码

执行

总结

通过上面的两个阻塞和非阻塞的例子,第一个例子文件读取完成后才会执行下面的代码,第二个我们不需要等待文件读取完成,就可以执行下面的操作。

阻塞是同步的,非阻塞时异步的。异步完成后,可以在回调中,进行后续的操作。

0人推荐
随时随地看视频
慕课网APP