本文实例讲述了nodejs异步编程基础之回调函数用法。分享给大家供大家参考,具体如下:
Node.js 异步编程的直接体现就是回调。
异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了。
回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,Node 所有 API 都支持回调函数。
例如,我们可以一边读取文件,一边执行其他命令,在文件读取完成后,我们将文件内容作为回调函数的参数返回。这样在执行代码时就没有阻塞或等待文件 I/O 操作。这就大大提高了 Node.js 的性能,可以处理大量的并发请求。
阻塞代码实例
1、创建一个文件 input.txt ,内容如下:
i have a dream
2、创建 main.js 文件, 代码如下:
var fs = require("fs"); var data = fs.readFileSync('input.txt'); //注:同步版的 fs.readFile() console.log(data.toString()); console.log("程序执行结束!");
以上代码执行结果如下:
非阻塞代码实例
1、创建一个文件 input.txt ,内容如下:
i have a dream
2、创建 main.js 文件, 代码如下:
var fs = require("fs"); fs.readFile('input.txt', function (err, data) { //注:异步版的 fs.readFile() if (err) return console.error(err); console.log(data.toString()); }); console.log("程序执行结束!");
以上代码执行结果如下:
总结:
以上两个实例我们了解了阻塞与非阻塞调用的不同。
第一个实例在文件读取完后才执行完程序。
第二个实例我们呢不需要等待文件读取完,这样就可以在读取文件时同时执行接下来的代码,大大提高了程序的性能。
因此,阻塞按是按顺序执行的,而非阻塞是不需要按顺序的,所以如果需要处理回调函数的参数,我们就需要写在回调函数内。
希望本文所述对大家nodejs程序设计有所帮助。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。
更新日志
- 《原神》过场动画-「赤炎凛霜之争」
- 异世界的魔王大人辅助魔物推荐一览
- 命运圣契公测角色强度排行榜大全 命运圣契最强角色一览
- 异世界的魔王大人新手建议攻略
- 世界音乐《WheretheEarthTouchestheStars》[WAV+CUE]
- 群星《这些歌无法忘记》2CD【DTS-WAV】
- 群星《2016专辑主打最大牌》[DTS-WAV]
- 《三角洲行动》品牌代言人即将公布 网友:明示吴彦祖
- COSPLAY图赏:巴西肉感美女COS兔女郎约尔太太 武力值全在大腿上
- 杨奇谈《黑神话:悟空》章节动画:像一部好笑好哭的散文集
- 群星《日月星辰》[FLAC/分轨][320.16MB]
- 群星《请和这样的我恋爱吧 影视原声带》[320K/MP3][70.86MB]
- 群星《请和这样的我恋爱吧 影视原声带》[FLAC/分轨][169.91MB]
- 邓健泓.2002-朋友二号【正东】【WAV+CUE】
- 群星.1994-新秀系列·永远的偶像【华星】【WAV+CUE】