node.js回调函数之阻塞调用与非阻塞调用


Posted in Javascript onNovember 13, 2015

首先,node.js作为javascript运行平台,它采用了事件驱动和异步编程的方式,通过事件注册和异步函数,开发人员可以提高资源利用率,服务器的性能也能得到改善。其次,对于前端人来说,node.js作为js的运行平台,我们可以通过编写系统级或者服务器端的javascript代码交给node.js来执行,让我们前端人也能作用于后台,相比之下,浏览器端的javascript代码在运行时会受到各种安全性的限制,对客户系统的操作有限,而node.js则是一个全面的后台运行时,为javascript提供了许多其他语言能够实现的许多功能。

下面回归正题,首先给大家介绍阻塞调用,具体内容请往下看。

1.阻塞调用(读取完文件再执行后面的操作)

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

输出结果:

“文件内容”

“程序执行结束!”

2.非阻塞调用(读取文件和其他操作同步执行)

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

输出结果:

“程序执行结束!”

“文件内容”

以上内容是小编给大家介绍的node.js回调函数之阻塞调用与非阻塞调用的全部内容,希望大家喜欢。

Javascript 相关文章推荐
javascript Demo模态窗口
Dec 06 Javascript
jquery EasyUI的formatter格式化函数代码
Jan 12 Javascript
使用JavaScript 实现对象 匀速/变速运动的方法
May 08 Javascript
javascript基础之查找元素的详细介绍(访问节点)
Jul 05 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
Oct 11 Javascript
javascript实现在指定元素中垂直水平居中
Sep 13 Javascript
JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)
Oct 10 Javascript
JavaScript实现向select下拉框中添加和删除元素的方法
Mar 07 Javascript
Bootstrap禁用响应式布局的实现方法
Mar 09 Javascript
react实现一个优雅的图片占位模块组件详解
Oct 30 Javascript
vue利用axios来完成数据的交互
Mar 23 Javascript
JS实现求字符串中出现最多次数的字符和次数示例
Jul 05 Javascript
JavaScript在网页中画圆的函数arc使用方法
Nov 13 #Javascript
学习JavaScript正则表达式
Nov 13 #Javascript
jquery实现九宫格大转盘抽奖
Nov 13 #Javascript
jquery动画效果学习笔记(8种效果)
Nov 13 #Javascript
javascript:void(0)点击登录没反应怎么解决
Nov 13 #Javascript
javascript:void(0)是什么意思及href=#与href=javascriptvoid(0)的区别
Nov 13 #Javascript
每天一篇javascript学习小结(Date对象)
Nov 13 #Javascript
You might like
php获取CSS文件中图片地址并下载到本地的方法
2014/12/02 PHP
php结合ajax实现手机发红包的案例
2016/10/13 PHP
解决Yii2邮件发送结果返回成功,但接收不到邮件的问题
2017/05/23 PHP
Mootools 1.2教程 滑动效果(Slide)
2009/09/15 Javascript
基于JQuery的cookie插件
2010/04/07 Javascript
详解JS函数重载
2014/12/04 Javascript
jquery实现炫酷的叠加层自动切换特效
2015/02/01 Javascript
javascript转换日期字符串为Date日期对象的方法
2015/02/13 Javascript
js实现动态显示时间效果
2017/03/06 Javascript
解决bootstrap下拉菜单点击立即隐藏bug的方法
2017/06/13 Javascript
JavaScript实现图片拖曳效果
2017/09/08 Javascript
JavaScript类数组对象转换为数组对象的方法实例分析
2018/07/24 Javascript
Angular value与ngValue区别详解
2019/11/27 Javascript
JS this关键字在ajax中使用出现问题解决方案
2020/07/17 Javascript
[01:01:42]Secret vs Optic Supermajor 胜者组 BO3 第二场 6.4
2018/06/05 DOTA
[45:06]完美世界DOTA2联赛PWL S2 Magma vs InkIce 第二场 11.28
2020/12/02 DOTA
Python3实现连接SQLite数据库的方法
2014/08/23 Python
python中Flask框架简单入门实例
2015/03/21 Python
RC4文件加密的python实现方法
2015/06/30 Python
Python判断文本中消息重复次数的方法
2016/04/27 Python
Python实现多并发访问网站功能示例
2017/06/19 Python
python操作openpyxl导出Excel 设置单元格格式及合并处理代码实例
2019/08/27 Python
澳大利亚领先的武术用品和健身器材供应商:SMAI
2019/03/24 全球购物
建筑安全责任书范本
2014/07/24 职场文书
酒店爱岗敬业演讲稿
2014/09/02 职场文书
出资证明书范本(标准版)
2014/09/24 职场文书
2015社区六五普法工作总结
2015/04/21 职场文书
运动员加油词
2015/07/18 职场文书
户外拓展训练感想
2015/08/07 职场文书
jquery插件实现搜索历史
2021/04/24 jQuery
Feign调用传输文件异常的解决
2021/06/24 Java/Android
Python 的 sum() Pythonic 的求和方法详细
2021/10/16 Python
德劲DE1107指针试高灵敏度全波段收音机机评
2022/04/05 无线电
CentOS安装Nginx并部署vue
2022/04/12 Servers
Win10/Win11 任务栏替换成经典样式
2022/04/19 数码科技
Win10此设备不支持接收Miracast无法投影的解决方法
2022/07/07 数码科技