商業,創業,美食,葡萄酒,閱讀,網路科技。
這是我的 FB粉專 以及 IG,我比較常使用 Threads,歡迎大家追蹤互動~
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/EventLoop
JavaScript 是 event driven 的, 在當下 event handler (包含他所有 call stack) 結束之前, 是不會被 interrupt 的. 如果當下 event handler 在執行中又有其他 event, 則 queue 起來再處理. By this model, JavaScript 在撰寫時有幾點要注意:
1. As the link says “A good practice to follow is to make message processing short and if possible cut down one message into several messages.”
2. 避免 recursive function calls, 即使有的話也要特別注意.
3. 真的要開 thread 就要用 web workers. 他 postMessage 一樣加到 message queue 等待執行.
4. Ajax XHR 的 onreadystatechange event 一樣是加到 message queue 等待執行.
商業,創業,美食,葡萄酒,閱讀,網路科技。