8
เรียกใช้ฟังก์ชัน Javascript แบบอะซิงโครนัสแบบซิงโครนัส
ครั้งแรกนี่เป็นกรณีที่เฉพาะเจาะจงมากในการทำผิดวิธีในการติดตั้งการโทรแบบอะซิงโครนัสใหม่ให้เป็นโค๊ดฐานซิงโครนัสมากซึ่งมีหลายพันบรรทัดในเวลาและเวลาไม่สามารถทำการเปลี่ยนแปลงได้ ถูกต้องแล้ว " มันทำให้ทุกชีวิตของฉันเจ็บปวด แต่ความจริงและอุดมคติมักไม่เข้าข่าย ฉันรู้ว่ามันแย่ ตกลงฉันจะทำมันออกไปได้อย่างไร: function doSomething() { var data; function callBack(d) { data = d; } myAsynchronousCall(param1, callBack); // block here and return data when the callback is finished return data; } ตัวอย่าง (หรือขาดดังกล่าว) ใช้ไลบรารีและ / หรือคอมไพเลอร์ซึ่งทั้งสองอย่างนี้ไม่สามารถใช้งานได้สำหรับโซลูชันนี้ ฉันต้องการตัวอย่างที่เป็นรูปธรรมเกี่ยวกับวิธีทำให้บล็อก (เช่นไม่ออกจากฟังก์ชั่น doSomething จนกระทั่งมีการโทรกลับ) โดยไม่ต้องแช่แข็ง UI หากสิ่งนั้นเป็นไปได้ใน JS