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; } 例(またはその欠如)はすべてライブラリおよび/またはコンパイラを使用していますが、どちらもこのソリューションでは実行できません。UIをフリーズせずにブロックする方法の具体的な例が必要です(たとえば、コールバックが呼び出されるまでdoSomething関数を終了しないでください)。JSでそんなことが可能なら。