为了账号安全,请及时绑定邮箱和手机立即绑定

没有模拟分流的时候,为什么isBuffer也只打印一次

在8:23运行了没有模拟分流(setTimeout)时的代码,这个时候 data 事件只调了一次。 而加入setTimeout 仅仅是给加了个pause 那data事件就变成触发两次了?

正在回答

2 回答

我觉得应该是只要有数据传输,就会触发data事件,开始没有是文件比较小 ,小于一次传输的量(一次传输的大小约为64kb),所以只有一次,而加了暂停和重启就会 在重启时会再次触发 data 事件,所以就打印了两次

0 回复 有任何疑惑可以回复我~

data的触发次数与读取的文件大小有关,在课程的后半程,老师将文件换成了mp4,然后data就触发了好多次的,png文件的图片在正常没有暂停的时候是触发一次的,后来加了一个定时器,中间暂停,模拟分流,相当于文件有点大,然后data触发了两次。。可能理解有点肤浅啊,我也是初学node

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
进击Node.js基础(二)
  • 参与学习       76755    人
  • 解答问题       226    个

本教程带你攻破 Nodejs,让 JavaScript流畅运行在服务器端

进入课程

没有模拟分流的时候,为什么isBuffer也只打印一次

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信