一部の関数呼び出しが非同期であるサードパーティの JavaScript ライブラリを操作しています。非同期ロジックをアプリケーションに組み込む代わりに、これらの非同期呼び出しに同期ラッパーを作成することを好みました。私は知っています、私は知っています、それはひどいデザインですが、これは完全に書き直される可能性が非常に高いデモプロジェクトです. チームにコンセプトを示す何かが必要ですが、まだパフォーマンスを心配する必要はありません。
これが私がやりたいことです:
function sync_call(input) {
var value;
// Assume the async call always succeed
async_call(input, function(result) {value = result;} );
return value;
}
jQuery の deferred と promise を試してみましたが、async のデザイン パターンを狙っているようです。コードで同期パターンを使用したいと考えています。