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 Web Slider 焦点图示例源码
Oct 10 Javascript
js跑步算法的实现代码
Dec 04 Javascript
javascript控制在光标位置插入文字适合表情的插入
Jun 09 Javascript
JavaScript中实现sprintf、printf函数
Jan 27 Javascript
javascript函数特点实例分析
May 14 Javascript
JSON字符串和对象之间的转换详解
May 26 Javascript
JavaScript学习笔记之创建对象
Mar 25 Javascript
vue中动态设置meta标签和title标签的方法
Jul 11 Javascript
JavaScript设计模式之工厂模式和抽象工厂模式定义与用法分析
Jul 26 Javascript
ES10 特性的完整指南小结
Mar 04 Javascript
javascript设计模式之装饰者模式
Jan 30 Javascript
vue使用微信扫一扫功能的实现代码
Apr 11 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的in_array低性能问题
2013/09/17 PHP
PHP ignore_user_abort函数详细介绍和使用实例
2014/07/15 PHP
php使用正则表达式获取图片url的方法
2015/01/16 PHP
js对象的构造和继承实现代码
2010/12/05 Javascript
Javascript中找到子元素在父元素内相对位置的代码
2012/07/21 Javascript
Javascript中call的两种用法实例
2013/12/13 Javascript
JavaScript编程的10个实用小技巧
2014/04/18 Javascript
JavaScript自定义数组排序方法
2015/02/12 Javascript
js正则表达式匹配数字字母下划线等
2015/04/14 Javascript
javascript与jquery中的this关键字用法实例分析
2015/12/24 Javascript
JavaScript判断DIV内容是否为空的方法
2016/01/29 Javascript
javascript实现仿百度图片的瀑布流加载效果
2016/04/20 Javascript
jQuery插件ajaxfileupload.js实现上传文件
2020/10/23 Javascript
JS中dom0级事件和dom2级事件的区别介绍
2016/05/05 Javascript
自己封装的一个简单的倒计时功能实例
2016/11/23 Javascript
es6学习笔记之Async函数的使用示例
2017/05/11 Javascript
JavaScript实现二叉树的先序、中序及后序遍历方法详解
2017/10/26 Javascript
jQuery代码优化方法总结
2018/01/29 jQuery
webpack 样式加载的实现原理
2018/06/12 Javascript
ant-design-vue 快速避坑指南(推荐)
2020/01/21 Javascript
jquery制作的移动端购物车效果完整示例
2020/02/24 jQuery
微信小程序实现文件预览
2020/10/22 Javascript
使用setup.py安装python包和卸载python包的方法
2013/11/27 Python
python 自动化将markdown文件转成html文件的方法
2016/09/23 Python
python如何获取服务器硬件信息
2017/05/11 Python
python多维数组切片方法
2018/04/13 Python
Django配置文件代码说明
2019/12/04 Python
详解CSS3 弹性布局快速入门
2019/06/06 HTML / CSS
websocket+sockjs+stompjs详解及实例代码
2018/11/30 HTML / CSS
行政管理专业推荐信
2013/11/02 职场文书
家居装修公司创业计划书范文
2014/03/20 职场文书
婚前财产公证书
2014/04/10 职场文书
《学棋》教后反思
2014/04/14 职场文书
学党史心得体会
2014/09/05 职场文书
岗位职责范本大全
2015/02/26 职场文书
台式电脑蓝牙适配器怎么安装?台式电脑蓝牙适配器安装教程
2022/04/08 数码科技