简介

Node.Js异步编程的直接表现方式就是回调。异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了。回调函数在完成任务后就会被调用,Node使用了大量的回调函数,node所有api都支持回调函数。比如,我们在操作文件的时候,可以一边读取文件,一边执行其他的命令,在读取文件完成后,我们将文件内容作为回调函数的参数返回,这样在执行代码时就没有阻塞或等待文件I/O操作,这就大大提高了Node.js的性能,可以处理大量的并发请求。

一个例子

有一个叫做test.txt的文件,内容如下:

Hello my callback world

阻塞代码

创建一个读取文件的readfile.js文件,代码如下:

执行

非阻塞代码

代码

执行

总结

通过上面的两个阻塞和非阻塞的例子,第一个例子文件读取完成后才会执行下面的代码,第二个我们不需要等待文件读取完成,就可以执行下面的操作。

阻塞是同步的,非阻塞时异步的。异步完成后,可以在回调中,进行后续的操作。

学习资料

http://www.runoob.com/nodejs/nodejs-callback.html

转载于:https://www.cnblogs.com/wolf-sun/p/6307150.html

[Node.js]回调函数相关推荐

  1. node.js 回调函数

    Node.js 回调函数 Node.js 异步编程的直接体现就是回调. 异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了. 回调函数在完成任务后就会被调用,Node 使用了大量的回调函数, ...

  2. 17.Node.js 回调函数--异步编程

    转自:http://www.runoob.com/nodejs/nodejs-tutorial.html Node.js 异步编程的直接体现就是回调. 异步编程依托于回调来实现,但不能说使用了回调后程 ...

  3. Node.js —— 回调函数callback

    一.什么是回调函数 1.回调函数是作为参数传递给另一个函数 2.回调函数是一段可执行的代码段,它作为一个参数传递给其他的代码,其作用是在需要的时候方便调用这段(回调函数)代码 3. 函数运行完成,再执 ...

  4. Node.js回调函数

  5. html js 回调函数,js中回调函数的学习笔记

    回调函数是什么在学习之前还真不知道js回调函数怎么使用及作用了,下面本文章把我在学习回调函数例子给各位同学介绍一下吧,有需了解的同学不防进入参考. 回调函数原理: 我现在出发,到了通知你" ...

  6. 【转】JS回调函数--简单易懂有实例

    JS回调函数--简单易懂有实例 初学js的时候,被回调函数搞得很晕,现在回过头来总结一下什么是回调函数. 我们先来看看回调的英文定义:A callback is a function that is ...

  7. JS回调函数(callback)

    在使用Jquery的时候,用到Callback(),回调函数的概念.而且很多. 比如: $.ajax({url:"test.json",type: "GET", ...

  8. js回调函数的理解(轉)

    js回调函数(callback)理解Mark!讲之前说一句function say(){alert(,,,,,,,,)}var say=function (){alert(,,,,,,,)}var s ...

  9. Node.js 功能函数

    Node.js 功能函数Node.js 功能函数Node.js 功能函数Node.js 功能函数Node.js 功能函数Node.js 功能函数 最近在项目中经常用到的一些JavaScript fun ...

最新文章

  1. 20_集合_第20天(Map、可变参数、Collections)
  2. 编译实验(三)目标代码生成
  3. 自制Windows 7 注册表键值修改服务(Service)
  4. 高仿带感魔性病毒源码+成品(最近很火的)
  5. 【矩阵乘法】Matrix Power Series(poj 3233)
  6. classic example2
  7. 页面无法访问 css文件加载问题
  8. zabbix无效监控项_zabbix4.2zabbix自定义监控项、添加新的监控项
  9. aws rds监控慢sql_AWS RDS SQL Server的多可用区配置
  10. MITRE 发布 2020 CWE Top 25 榜单
  11. ASP.NET学习顺序(转摘)
  12. vertica常用sql语句总结
  13. 全国青少年机器人技术等级考试标准 (三四级/arduino/mixly)
  14. 融云首席科学家任杰:写在融云 8 周年
  15. angular 万年历_jQuery实现的简单日历组件定义与用法示例
  16. Windows电脑上搭建Radius 服务器并实现802.1X认证
  17. 安装 adobe 软件 photoshop 遇到 81错误 mac
  18. java 文件传输 分块传输
  19. HBase MOB特性介绍
  20. Spring中使用HSQLDB测试ibatis的dao

热门文章

  1. Linux下date命令的修改时间问题
  2. web架构设计经验分享 (转)
  3. read-sequence的返回值
  4. golang函数——可以为类型(包括内置数据类型)定义函数,类似类方法,同时支持多返回值...
  5. 论文笔记之:Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning
  6. css基础 设置链接颜色
  7. Swift - 经纬度位置坐标与真实地理位置相互转化
  8. 如何更改gridview中任意单元格颜色或者内容。
  9. struct tm 和 time_t
  10. 寻找下半年潜力币,压中一个,不负牛市