Node.js同步与异步

本文介绍了Node.js中的同步与异步编程,重点讨论了回调函数的使用,通过同步和异步方式读取、写入及复制文件的内容。强调了异步方法在性能和速度上的优势,同时提供了多个示例代码来展示同步与异步操作的差异。
摘要由CSDN通过智能技术生成

部分参考菜鸟教程菜鸟教程 - 学的不仅是技术,更是梦想!

文章目录

  • 回调函数
  • 通过同步方式读取文件内容
  • 通过异步方式读取文件内容
  • 同步api和异步api
  • 同步方法和异步方法获取返回值
  • 通过同步方式写入文件
  • 通过异步方式写入文件
  • 使用同步方法复制文件
  • 使用异步方法复制文件

前言

Node.js 文件系统(fs 模块)模块中的方法均有异步和同步版本,例如读取文件内容的函数有异步的 fs.readFile() 和同步的 fs.readFileSync()。

异步的方法函数最后一个参数为回调函数,回调函数的第一个参数包含了错误信息(error)。

建议大家使用异步方法,比起同步,异步方法性能更高,速度更快,而且没有阻塞。


一、回调函数

Node.js 异步编程的直接体现就是回调。

异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了。

回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,Node 所有 API 都支持回调函数。

例如,我们可以一边读取文件,一边执行其他命令,在文件读取完成后,我们将文件内容作为回调函数的参数返回。这样在执行代码时就没有阻塞或等待文件 I/O 操作。这就大大提高了 Node.js 的性能,可以处理大量的并发请求。

阻塞代码实例:

创建一个文件 input.txt ,内容如下:

abcabc

创建 main.js 文件, 代码如下:

var fs = require("fs");

var data = fs.readFileSync('input.txt');

console.log(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值