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