同期における異なる関数の関数シミュレーション
Funclistは関数実行関数のキューであり、Callback関数のFlag = Trueは同期マーカー数量です
<script>var flag = false;function funcTest(t,func){ setTimeout(function(){ (function(param){ console.log(param); func(); }(t)); },t*1000);}var funcList = [];funcList.push(function(){ funcTest(4,function(){ flag = true;//Synchronousマーカー})}); //異なる非同期関数がキューに追加されますfunclist.push(functest(){functest(3、function(){flag = true;})});非同期関数は、キューに関数をキューにdealfuncsync(funclist); function dealfuncsync(funclist){function callbacksync(){if(!funclist || funclist.length == 0){console.log( 'end');戻る; } flag = false; funclist.shift()(); settimeout(function(){if(flag){// control queue function synchronization callbacksync();} else {setimeout(arguments.callee、100);}}、100); } callbacksync();} </script>異なる記事に同期JS非同期関数を実装する上記の方法は、私があなたと共有するすべてのコンテンツです。参照を提供できることを願っています。wulin.comをもっとサポートできることを願っています。