JavaScript は非同期でロードできます。非同期読み込みとは、JavaScript のダウンロードと実行中にブラウザが後続のページの処理を継続することを意味します。これにより、スクリプト ファイルの読み込みが最適化され、ページの読み込み速度が向上します。各ブラウザでスクリプト ファイルを解析するための異なるメカニズムが関与するため、より多くの用途に使用できます。非同期読み込み。
このチュートリアルの動作環境: Windows 10 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
#1. まず、非同期と同期とは何かを理解する必要があります
同期読み込み: 同期モードもブロッキング モードとして知られるこのモードは、ブラウザーの後続の処理を妨げ、後続の解析を停止するため、後続のファイル (画像など) の読み込み、レンダリング、およびコードの実行が停止します。 非同期読み込み: 非同期読み込みはノンブロッキングとも呼ばれ、ブラウザは js のダウンロードと実行中に後続のページの処理を続行します。 平易な言葉で言うと、同期とは、あなたが私に夕食に行くように頼んだ場合、あなたの声が聞こえれば一緒に食事に行きますが、聞こえなければあなたは私に電話をかけ続けることを意味しますあなたの話を聞いたと言うまでは、私も一緒に行きます。食事をしてください。 非同期とは、あなたが私に電話してから、自分で食事に行くことを意味します。知らせを受けたらすぐに帰ることもあれば、仕事が終わってから食事をすることもあります。そのため、食事をご馳走してほしい場合は同期方式、食事をご馳走してほしい場合は非同期方式を使うと節約できます。2. スクリプト ファイルの読み込みを最適化し、ページの読み込み速度を向上させるために、非同期
を使用する必要があるのはなぜですか? ページの読み込み速度を向上させることは常に非常に重要です。スピード。各ブラウザにはスクリプト ファイルを解析するためのメカニズムが異なり、スクリプトを読み込むと他のリソースやファイルの読み込みがブロックされるため、非同期読み込みがより一般的に使用されます。3. 非同期の使用方法
編集者は、非同期読み込みを使用するには 3 つの方法があると考えています。 async, ロード後に実行, 外部スクリプトのみロード可能, script タグ内に js は記述できません.//1.async 只能加载外部脚本 <script src="js/index.js" async="async"></script>
//2.defer 只能IE使用,文档解析完成以后才会去执行 <script src="js/index.js" defer="defer"></script>
//3.按需求加载,考虑浏览器兼容 function loadScript(url,callback){ var script = document.createElement("script"); if(script.readyState){ IE浏览器兼容 script.onreadystatechange = function(){ if(script.readyState == "complete" || script.readState == "loaded"){ callback() } } }else{ 大部分浏览器兼容 script.onload = function(){ callback() } } script.src = url; document.head.appendChild(script) } loadScript("08.js",function(){ test() }) //外部js function test(){ console.log("hello world") }
以上がJavaScriptは非同期でロードできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。