console.log() は非同期ですか? 同期ですか?
非同期 JavaScript の領域では、console.log() メソッドの動作は次のようになります。議論の対象となった。 『Async Javascript』という本では、Safari と Chrome では console.log() が非同期であると示唆していますが、多くのユーザーが同期動作を観察しています。
この矛盾を明確にするには、console.log() が非同期であることを理解することが重要です。標準化されていない。その動作はブラウザー固有であり、時間の経過とともに変化する可能性があります。 console.log() の動作がブラウザの更新によって変化した可能性があるため、書籍の情報が古くなっている可能性があります。
さらに詳しく調べてみると、console.log() が非同期的に動作しないことは明らかです。コールバックやプロミスチェーンは提供しません。これは、単にコンソールに値を表示するための方法です。
コンソールがログに記録された値をどのように扱うかが、混乱が生じる場所です。多くの場合、それらは非同期的に保存およびレンダリングされます。ただし、オブジェクト プロパティの展開など、これらのログに記録された値にアクセスすると、参照の保持または遅延評価によりライブ評価が行われる可能性があります。したがって、ログに記録された後のオブジェクトへの変更がコンソールに表示される可能性があります。
この問題を回避するには、JSON.stringify() などを使用して、不変またはシリアル化可能なデータをログに記録することをお勧めします。さらに、デバッグにブレークポイントを使用すると、特定の実行ポイントで検査できるため、より信頼性の高いアプローチになります。
以上が「console.log()」は本当に非同期ですか、それともそれよりも微妙ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。