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获取元素偏移量的方法有哪些
Jun 24 Javascript
jQuery层动画定位滑动效果的方法
Apr 30 Javascript
JavaScript返回上一页的三种方法及区别介绍
Jul 04 Javascript
跟我学习javascript的定时器
Nov 19 Javascript
JavaScript隐式类型转换
Mar 15 Javascript
Javascript中click与blur事件的顺序详析
Apr 25 Javascript
Three.js利用性能插件stats实现性能监听的方法
Sep 25 Javascript
JavaScript实现重力下落与弹性效果的方法分析
Dec 20 Javascript
webpack4 optimization使用总结
Nov 10 Javascript
JS数据类型(基本数据类型、引用数据类型)及堆和栈的区别分析
Mar 04 Javascript
javascript实现扫雷简易版
Aug 18 Javascript
vue-router路由懒加载及实现的3种方式
Feb 28 Vue.js
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
phpMyAdmin 安装及问题总结
2009/05/28 PHP
Zend studio文件注释模板设置方法
2013/09/29 PHP
php文件操作之文件写入字符串、数组的方法分析
2019/04/15 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
javascript之学会吝啬 精简代码
2010/04/25 Javascript
javascript中的startWith和endWith的几种实现方法
2013/05/07 Javascript
js实现倒计时(距离结束还有)示例代码
2013/07/24 Javascript
做好七件事帮你提升jQuery的性能
2014/02/06 Javascript
js用拖动滑块来控制图片大小的方法
2015/02/27 Javascript
ajax+jQuery实现级联显示地址的方法
2015/05/06 Javascript
jQuery原理系列-常用Dom操作详解
2016/06/07 Javascript
炫酷的js手风琴效果
2016/10/13 Javascript
VUE JS 使用组件实现双向绑定的示例代码
2017/01/10 Javascript
webpack中CommonsChunkPlugin详细教程(小结)
2017/11/09 Javascript
对vue 键盘回车事件的实例讲解
2018/08/25 Javascript
微信小程序点击item使之滚动到屏幕中间位置
2020/03/25 Javascript
[39:21]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.24
2019/09/10 DOTA
[01:03:36]DOTA2-DPC中国联赛 正赛 VG vs Magma BO3 第二场 1月26日
2021/03/11 DOTA
python判断文件是否存在,不存在就创建一个的实例
2019/02/18 Python
python tkinter canvas 显示图片的示例
2019/06/13 Python
python查看矩阵的行列号以及维数方式
2020/05/22 Python
详解Python GUI编程之PyQt5入门到实战
2020/12/10 Python
澳大利亚个性化儿童礼品网站:Bright Star Kids
2019/06/14 全球购物
PHP如何防止SQL注入
2014/05/03 面试题
中间件分为哪几类
2016/09/18 面试题
银行求职信个人范文
2013/12/16 职场文书
展会邀请函范文
2014/01/26 职场文书
初中考试作弊检讨书
2014/02/01 职场文书
销售员岗位职责范本
2014/02/03 职场文书
理工类毕业自我鉴定
2014/02/20 职场文书
相亲大会策划方案
2014/06/05 职场文书
2015年民主评议党员工作总结
2015/05/19 职场文书
python3.9之你应该知道的新特性详解
2021/04/29 Python
MongoDB数据库的安装步骤
2021/06/18 MongoDB
JS的深浅复制详细
2021/10/16 Javascript
SQL Server的存储过程与触发器以及系统函数和自定义函数
2022/04/10 SQL Server