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 相关文章推荐
js 判断 enter 事件
Feb 12 Javascript
使用 JScript 创建 .exe 或 .dll 文件的方法
Jul 13 Javascript
关于JAVASCRIPT urldecode URL解码的问题
Jan 08 Javascript
js动态设置鼠标事件示例代码
Oct 30 Javascript
js网页实时倒计时精确到秒级
Feb 10 Javascript
JSON.stringify转换JSON时日期时间不准确的解决方法
Aug 08 Javascript
jquery实现公告翻滚效果
Feb 27 Javascript
第七篇Bootstrap表单布局实例代码详解(三种表单布局)
Jun 21 Javascript
在小程序中使用Echart图表的示例代码
Aug 02 Javascript
bootstrap动态调用select下拉框的实例代码
Aug 09 Javascript
详解Vue基于vue-quill-editor富文本编辑器使用心得
Jan 03 Javascript
js实现拖拽元素选择和删除
Aug 25 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编程最快明白(第一讲 软件环境和准备工作)
2010/10/25 PHP
php中防止伪造跨站请求的小招式
2011/09/02 PHP
PHP中设置时区,记录日志文件的实现代码
2013/01/07 PHP
深入php函数file_get_contents超时处理的方法详解
2013/06/03 PHP
通过PHP简单实例介绍文件上传
2015/12/16 PHP
PHP XML Expat解析器知识点总结
2019/02/15 PHP
JS模拟多线程
2007/02/07 Javascript
Javascript与flash交互通信基础教程
2008/08/07 Javascript
prototype 学习笔记整理
2009/07/17 Javascript
jquery tools系列 expose 学习
2009/09/06 Javascript
JS使用getComputedStyle()方法获取CSS属性值
2014/04/23 Javascript
浅谈JavaScript 框架分类
2014/11/10 Javascript
全屏滚动插件fullPage.js使用实例解析
2016/10/21 Javascript
jQuery.ajax向后台传递数组问题的解决方法
2017/05/12 jQuery
利用canvas实现的加载动画效果实例代码
2017/07/05 Javascript
jQuery实现对网页节点的增删改查功能示例
2017/09/18 jQuery
JavaScript时间戳与时间日期间相互转换
2017/12/11 Javascript
Vue源码解析之Template转化为AST的实现方法
2018/12/14 Javascript
vue实现压缩图片预览并上传功能(promise封装)
2019/01/10 Javascript
js实现树形数据转成扁平数据的方法示例
2020/02/27 Javascript
记一次vue跨域的解决
2020/10/21 Javascript
[49:29]LGD vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
[37:29]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.19
2020/11/19 DOTA
Python列表生成器的循环技巧分享
2015/03/06 Python
Python3爬虫教程之利用Python实现发送天气预报邮件
2018/12/16 Python
numpy的Fancy Indexing和array比较详解
2020/06/11 Python
极简的HTML5模版
2015/07/09 HTML / CSS
AJAX应用和传统Web应用有什么不同
2013/08/24 面试题
给医务人员表扬信
2014/01/12 职场文书
前处理班长职位说明书
2014/03/01 职场文书
退休教师欢送会主持词
2014/03/31 职场文书
银行竞聘演讲稿范文
2014/04/23 职场文书
五一劳动节活动总结
2015/02/09 职场文书
小浪底导游词
2015/02/12 职场文书
html中相对位置与绝对位置的具体使用
2022/05/15 HTML / CSS
MySQL数据库之存储过程 procedure
2022/06/16 MySQL