JavaScript Promise は、非同期操作を処理する方法の 1 つです。 Promise が解決されると、現在の実行スレッドが終了した後、その .then() ハンドラーが非同期的に実行されます。これは、現在のスレッド内のすべての同期コードが .then() ハンドラーの前に実行されることを意味します。
次のコード スニペットを考えてみましょう。
<code class="javascript">Promise.resolve('A') .then(function(a){console.log(2, a); return 'B';}) .then(function(a){ Promise.resolve('C') .then(function(a){console.log(7, a);}) .then(function(a){console.log(8, a);}); console.log(3, a); return a;}) .then(function(a){ Promise.resolve('D') .then(function(a){console.log(9, a);}) .then(function(a){console.log(10, a);}); console.log(4, a);}) .then(function(a){ console.log(5, a);}); console.log(1); setTimeout(function(){console.log(6)},0);</code>
結果このコード スニペットの部分は次のとおりです。
<code class="text">1 2 "A" 3 "B" 7 "C" 4 "B" 8 undefined 9 "D" 5 undefined 10 undefined 6</code>
このコード スニペットの実行順序は次のとおりです:
以上がJavaScript Promise の実行順序とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。