0
我有这样https://jsfiddle.net/vhzqvx2e/20/ 一些javasctipt代码如果选择4个文件,并期待到控制台,你会看到这个的Javascript“for”循环功能序列
1
2
3
4
4
Object { name: "FireShot Capture 4", size: 54714, type: "image/png", preview: "data:image/png;base64,"[…] }
4 -
Object { name: "FireShot Capture 4", size: 54714, type: "image/png", preview: "data:image/png;base64,"[…] }
4 -
Object { name: "FireShot Capture 4", size: 54714, type: "image/png", preview: "data:image/png;base64,"[…] }
4 -
Object { name: "FireShot Capture 4", size: 54714, type: "image/png", preview: "data:image/png;base64,"[…] }
正如你可以在最前一页看,我看到满环控制台.LOG(this.count);然后我的所有代码都会在最后一个循环中运行(图片大小和名称仅适用于最后一张图片)。我怎样才能让阅读器和SomeCl.processM(info);在每个循环运行,而不是4次之后?
嗯,我得到了在控制台相同的输出。 .. 1 2 3 4和4次文件信息 – user1128677
后仍然没有得到它。的console.log(this.count);并在一个循环中回调(SomeCl.processM(info))。因此,我们进入循环,console.log(this.count)显示我1,然后它应该运行回调,然后去第二个循环。但是现在我得到了和我的 – user1128677
同样的结果,它是异步的。 JavaScript是单线程语言,意味着一次只能执行一项任务。循环进行到最后,将i值传递给函数。然后才调用函数。然后filereader加载文件,然后才调用回调。 – bfmags