国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目次
キーテイクアウト
それはいいです。そして実際、あなたの真にあなたを含む多くの人にとって、jQueryはAjaxに関しては事実上の基準になりました。しかし、あなたは何を知っていますか?これが事実である必要はありません。 jQueryは醜いDOM APIを回避するために存在します。しかし、それは本當に
onreadyState vs onload
jQueryは、バックエンドテクノロジーがAJAXリクエストであることを知っているため、カバーの下にリクエストヘッダーを設定します。一般に、バックエンドは、適切な応答を送信する限り、Get Requestがどこから來るかを気にしません。これは、同じWeb APIでAJAXとHTMLをサポートしたい場合に役立ちます。それでは、バニラajaxでリクエストヘッダーを設定する方法を見てみましょう:
ブラウザの1つの機能は、Ajaxリクエストのキャッシュ機能です。たとえば、インターネットエクスプローラーは、デフォルトでこれを行います。私はかつて何時間も苦労して、なぜ私のajaxが機能していなかったのかを理解しようとしました。幸いなことに、jQueryはデフォルトでブラウザキャッシュをバストします。まあ、あなたもプレーンなajaxでもできます、そしてそれはかなり簡単です:
vanilla javascriptを使用して基本的なAjax要求を作成するにはどうすればよいですか?
vanilla ajax?
var xhr = new xmlhttprequest();
バニラajaxはすべてのブラウザーでサポートされていますか?
ホームページ ウェブフロントエンド jsチュートリアル jQueryのないバニラ?アジャックスのガイド

jQueryのないバニラ?アジャックスのガイド

Feb 19, 2025 am 11:58 AM

jQueryのないバニラ?アジャックスのガイド

キーテイクアウト

    非同期JavaScriptとXMLの略であるAjaxは、部分的なページの更新を可能にし、完全なページの更新の必要性を減らし、より多くの流動的なユーザーエクスペリエンスを可能にします。 AJAXリクエストの基本的な解剖學には、HTTP要求に必要なクラスのインスタンスを作成し、HTTPリクエストメソッドとページのURLを指定し、リクエストを送信します。
  • jQueryはAjaxリクエストを簡素化できますが、必ずしも必要ではありません。 Vanilla JavaScriptのAjax APIは大幅な改善を遂げており、XMLHTTPREQUEST仕様は現在、標準の観點から単一のエンティティとして扱われ、コミュニティが1つの標準に固執(zhí)することをコミットしていることを示しています。
  • Vanilla Ajaxは、柔軟でモダンなフロントエンドAPIを提供します。リクエストヘッダーを設定し、サーバーから予想される応答のタイプを指定し、ブラウザキャッシュをバストすることができます。 Ajaxはかつて複雑なプロセスでしたが、より簡単でユーザーフレンドリーになりました。
  • 非同期JavaScriptとXMLの略であるAjaxは、部分ページの更新を行うメカニズムです。完全な更新の必要性を回避しながら、サーバーから來るデータを使用してページのセクションを更新できます。この方法で部分的な更新を行うことは、流動的なユーザーエクスペリエンスを作成するのに効果的であり、サーバー上の負荷を減らすことができます。
  • これは、基本的なAJAXリクエストの解剖學です:

ここでは、サーバーにHTTP要求を行うために必要なクラスのインスタンスを作成しています。次に、HTTPリクエストメソッドを最初のパラメーターとして指定し、2番目のパラメーターとしてリクエストしているページのURLを指定して、オープンメソッドを呼び出します。最後に、nullをパラメーターとして渡す送信方法を呼び出します。リクエスト後(ここではGETを使用しています)の場合、このパラメーターにはリクエストで送信するデータを含める必要があります。

そしてこれがサーバーからの応答に対処する方法です:

var xhr = new XMLHttpRequest();
xhr.open('GET', 'send-ajax-data.php');
xhr.send(null);

readedStateChangeは非同期です。つまり、いつでも呼び出されます。これらのタイプの関數はコールバックです。これは、処理が終了すると呼ばれるものです。この場合、サーバーで処理が行われています。

ajaxの基本についてもっと知りたい人のために、MDNネットワークには良いガイドがあります。

jqueryにjqueryへではありませんか?

xhr.onreadystatechange = function () {
  var DONE = 4; // readyState 4 means the request is done.
  var OK = 200; // status 200 is a successful return.
  if (xhr.readyState === DONE) {
    if (xhr.status === OK) {
      console.log(xhr.responseText); // 'This is the returned text.'
    } else {
      console.log('Error: ' + xhr.status); // An error occurred during the request.
    }
  }
};
したがって、良いニュースは、上記のコードがすべての最新の主要なブラウザで機能することです。悪いニュースは、まあ、それが非常に複雑であるということです。ええ!私はすでにエレガントなソリューションのためにピン留めしています。

jQueryを使用して、スニペット全體を

に凝縮できます

それはいいです。そして実際、あなたの真にあなたを含む多くの人にとって、jQueryはAjaxに関しては事実上の基準になりました。しかし、あなたは何を知っていますか?これが事実である必要はありません。 jQueryは醜いDOM APIを回避するために存在します。しかし、それは本當に

ugいですか?または理解できない?

この記事の殘りの部分では、Vanilla JavaScriptのAJAX APIに加えられた改善を調査したいと思います。仕様全體はW3Cにあります。この仕様について私にぶつかるのは名前です。 「xmlhttprequestレベル2」ではなく、「xmlhttprequestレベル1」です。これは、2つの仕様間の2011年の合併の結果です。今後、それは標準の観點から単一のエンティティとして扱われ、生きている標準はXMLHTTPREQUESTと呼ばれます。これは、コミュニティが1つの基準に固執(zhí)するというコミットメントがあることを示しています。これは、jQueryから解放したい開発者にとって良いニュースを意味することを意味します。

では、始めましょう…

セットアップ

この記事では、バックエンドでnode.jsを使用しています。はい、ブラウザとサーバーにJavaScriptがあります。 node.jsのバックエンドは無駄がないので、Githubにデモ全體をダウンロードしてフォローすることをお勧めします。これがサーバー上にあるものの肉とジャガイモです:

これにより、リクエストURLをチェックして、アプリの応答方法を決定します。リクエストがScriptsディレクトリから來た場合、適切なファイルは、コンテンツタイプのアプリケーション/JavaScriptで提供されます。それ以外の場合、リクエストのヘッダー付きのXリクエストされたヘッダーがXMLHTTPREQUESTに設定されている場合、AJAXリクエストを扱っていることがわかり、適切に対応できます。そして、これらのどちらもそうでない場合、ファイルビュー/index.htmlが提供されます。

サーバーからのAJAX応答に飛び込むと、コメントされたセクションを展開します。 node.jsでは、レンダリングとhttphandlerで重く塗りつぶしをしなければなりませんでした:
var xhr = new XMLHttpRequest();
xhr.open('GET', 'send-ajax-data.php');
xhr.send(null);

レンダリング関數は、要求されたファイルの內容を非同期に読み取ります。 httphandler関數への參照が渡され、コールバックとして実行されます。 httphandler関數は、エラーオブジェクトの存在をチェックします(たとえば、要求されたファイルが開けられなかった場合、これは存在します)。すべてを提供することは良いことで、適切なHTTPステータスコードとコンテンツタイプを使用して、ファイルのコンテンツを提供します。

APIのテスト

xhr.onreadystatechange = function () {
  var DONE = 4; // readyState 4 means the request is done.
  var OK = 200; // status 200 is a successful return.
  if (xhr.readyState === DONE) {
    if (xhr.status === OK) {
      console.log(xhr.responseText); // 'This is the returned text.'
    } else {
      console.log('Error: ' + xhr.status); // An error occurred during the request.
    }
  }
};
サウンドバックエンドAPIと同様に、いくつかのユニットテストを作成して、それが機能することを確認しましょう。これらのテストでは、私はスーパーテストとモカに助けを求めています:

これらは、アプリが正しいコンテンツタイプとHTTPステータスコードで異なるリクエストに応答することを保証します。依存関係をインストールしたら、NPMテストを使用してコマンドからこれらのテストを実行できます。 インターフェイス

さあ、HTMLで構築しているユーザーインターフェイスを見てみましょう。

$.ajax({
  url: 'send-ajax-data.php',
})
.done(function(res) {
  console.log(res);
})
.fail(function(err) {
  console.log('Error: ' + err.status);
});
HTMLはきれいに見えます。ご覧のとおり、すべての興奮はJavaScriptで起こっています。

onreadyState vs onload

標準的なajaxの本を調べた場合、どこにでもonedeadtateを見つけることができます。このコールバック関數には、ネストされたIFと多くの綿毛が完備されており、頭の上部から覚えておくのが難しくなります。 onreadystateとonloadイベントを頭から頭に向けましょう。

var xhr = new XMLHttpRequest();
xhr.open('GET', 'send-ajax-data.php');
xhr.send(null);

これはコンソールの出力です:

jQueryのないバニラ?アジャックスのガイド

onedeadedStateイベントは、あちこちで発砲します。それは、各リクエストの先頭に、最後に発砲します。しかし、仕様によれば、オンロードイベントは、リクエストがに成功した場合にのみ発射されます。したがって、オンロードイベントは、數秒で有効に使用できる最新のAPIです。 OnreadedStateイベントは、逆方向に互換性があります。ただし、オンロードイベントは選択のツールである必要があります。オンロードイベントはjQueryの成功コールバックのように見えます、そうではありませんか?

5 lbのダンベルを脇に置いて、腕のカールに移動する時が來ました。

リクエストヘッダーの設定

jQueryは、バックエンドテクノロジーがAJAXリクエストであることを知っているため、カバーの下にリクエストヘッダーを設定します。一般に、バックエンドは、適切な応答を送信する限り、Get Requestがどこから來るかを気にしません。これは、同じWeb APIでAJAXとHTMLをサポートしたい場合に役立ちます。それでは、バニラajaxでリクエストヘッダーを設定する方法を見てみましょう:

これで、node.js:

をチェックインすることができます
xhr.onreadystatechange = function () {
  var DONE = 4; // readyState 4 means the request is done.
  var OK = 200; // status 200 is a successful return.
  if (xhr.readyState === DONE) {
    if (xhr.status === OK) {
      console.log(xhr.responseText); // 'This is the returned text.'
    } else {
      console.log('Error: ' + xhr.status); // An error occurred during the request.
    }
  }
};

ご覧のとおり、Vanilla Ajaxは柔軟でモダンなフロントエンドAPIです。リクエストヘッダーを使用できるアイデアがたくさんあり、そのうちの1つはバージョン化です。たとえば、このWeb APIの複數のバージョンをサポートしたいとします。これは、URLを壊したくない場合に役立ち、代わりにクライアントが必要なバージョンを選択できるメカニズムを提供します。次のように、リクエストヘッダーを設定できます

$.ajax({
  url: 'send-ajax-data.php',
})
.done(function(res) {
  console.log(res);
})
.fail(function(err) {
  console.log('Error: ' + err.status);
});
そしてバックエンドでは、

を試してください

// app.js
var app = http.createServer(function (req, res) {
  if (req.url.indexOf('/scripts/') >= 0) {
    render(req.url.slice(1), 'application/javascript', httpHandler);
  } else if (req.headers['x-requested-with'] === 'XMLHttpRequest') {
    // Send Ajax response
  } else {
    render('views/index.html', 'text/html', httpHandler);
  }
});
node.jsは、リクエストヘッダーをチェックするために使用できるヘッダーオブジェクトを提供します。唯一のトリックは、それが小文字でそれらを読み取ることです。

私たちは家のストレッチにいて、汗をかいていません!あなたは疑問に思っているかもしれません、Ajaxについて他に何が知っているのでしょうか?さて、いくつかのきちんとしたトリックはどうですか。
// app.js
function render(path, contentType, fn) {
  fs.readFile(__dirname + '/' + path, 'utf-8', function (err, str) {
    fn(err, str, contentType);
  });
}
var httpHandler = function (err, str, contentType) {
  if (err) {
    res.writeHead(500, {'Content-Type': 'text/plain'});
    res.end('An error has occured: ' + err.message);
  } else {
    res.writeHead(200, {'Content-Type': contentType});
    res.end(str);
  }
};

応答タイプ

私が扱っているのに、私が扱っているのに、なぜ古いJSONであるのに、応答テキストにサーバーの応答が含まれる理由を疑問に思うかもしれません。結局のところ、それは私が適切なレポンサイタイプを設定しなかったからです。このajax屬性は、サーバーにどのような種類の応答が期待されるかをフロントエンドAPIに伝えるのに最適です。それでは、これを有効にしてみましょう:

var xhr = new XMLHttpRequest();
xhr.open('GET', 'send-ajax-data.php');
xhr.send(null);

すごい、私がJSONに解析する必要があるプレーンテキストを送り返す代わりに、APIに何を期待するかを伝えることができます。この機能は、ほとんどすべての最新の主要なブラウザで利用できます。もちろん、jQueryはこのタイプの変換を自動的に行います。しかし、私たちがプレーンJavaScriptで同じことをする便利な方法を持っているのは素晴らしいことではありませんか? Vanilla Ajaxは、XMLを含む他の多くの応答タイプをサポートしています。

悲しいことに、インターネットエクスプローラーでは、ストーリーはそれほど素晴らしいものではありません。 IE 11の時點で、チームはまだXHR.ResponsEtype =「JSON」のサポートを追加していません。この機能は、Microsoft Edgeに到著することです。しかし、このバグは、執(zhí)筆時點でほぼ2年間傑出しています。私の推測では、Microsoftの人々がブラウザを刷新するのに苦労しています。 Microsoft Edge、別名Project Spartanが約束を築くことを願っています。

悲しいかな、この問題を回避する必要がある場合は、

キャッシュバスト
xhr.onreadystatechange = function () {
  var DONE = 4; // readyState 4 means the request is done.
  var OK = 200; // status 200 is a successful return.
  if (xhr.readyState === DONE) {
    if (xhr.status === OK) {
      console.log(xhr.responseText); // 'This is the returned text.'
    } else {
      console.log('Error: ' + xhr.status); // An error occurred during the request.
    }
  }
};

ブラウザの1つの機能は、Ajaxリクエストのキャッシュ機能です。たとえば、インターネットエクスプローラーは、デフォルトでこれを行います。私はかつて何時間も苦労して、なぜ私のajaxが機能していなかったのかを理解しようとしました。幸いなことに、jQueryはデフォルトでブラウザキャッシュをバストします。まあ、あなたもプレーンなajaxでもできます、そしてそれはかなり簡単です:

jQueryドキュメントごとに、リクエストの最後にタイムスタンプクエリ文字列を追加するだけです。これにより、リクエストはややユニークになり、ブラウザのキャッシュをバストします。 http ajaxリクエストを発射すると、これがどのように見えるかを見ることができます:
$.ajax({
  url: 'send-ajax-data.php',
})
.done(function(res) {
  console.log(res);
})
.fail(function(err) {
  console.log('Error: ' + err.status);
});

jQueryのないバニラ?アジャックスのガイド tada!すべてドラマがない。

結論

300lbベンチプレスのバニラ?アジャックスを楽しんだことを願っています。しばらくすると、Ajaxは恐ろしい獣でしたが、それ以上はありませんでした。実際、私たちは松葉杖、ahem shackles、jqueryのすべての基本をすべて取り上げました。

Ajaxの呼び出しを行う簡潔な方法を殘します:

そしてこれが応答がどのように見えるかです:

// app.js
var app = http.createServer(function (req, res) {
  if (req.url.indexOf('/scripts/') >= 0) {
    render(req.url.slice(1), 'application/javascript', httpHandler);
  } else if (req.headers['x-requested-with'] === 'XMLHttpRequest') {
    // Send Ajax response
  } else {
    render('views/index.html', 'text/html', httpHandler);
  }
});

忘れないでください、GitHubでデモ全體を見つけることができます。コメントでjQueryの有無にかかわらず、あなたの考えを聞いて歓迎します。jQueryのないバニラ?アジャックスのガイド

jqueryのないバニラajaxに関するよくある質問(FAQ)

バニラ?アジャックスとは何ですか?jquery ajaxとはどうなりますか?

vanilla ajaxは、jQueryライブラリに頼らずに、非同期Webアプリケーションを作成するためのネイティブJavaScriptの使用を指します。 JQuery Ajaxは、Ajaxを処理するための単純化されたクロスブラウザー互換性のある方法を提供しますが、Vanilla Ajaxは、基礎となるプロセスのより多くの制御と理解を提供します。 jqueryのような外部ライブラリへの依存関係を減らしたい場合にも最適なオプションです。

vanilla javascriptを使用して基本的なAjax要求を作成するにはどうすればよいですか?

Vanilla JavaScriptを使用して基本的なAJAX要求を作成するには、XMLHTTPREQUESTオブジェクトを使用します。このオブジェクトを使用すると、HTTPまたはHTTPSリクエストをWebサーバーに送信し、サーバーの応答データをスクリプトにロードすることができます。簡単な例を次に示します:

var xhr = new xmlhttprequest();
xhr.open( "get"、 'https://api.example.com/data'、true);
> xhr.oneadystatechange = function(){
if(xhr.readystate == 4 && xhr.status == 200)
console.log(json.parse(xhr.responsetext));
}
xhr.send();

vanilla ajax?

のエラーを処理するにはどうすればよいですか? Vanilla Ajaxでのエラー処理は、XmlhttpRequestオブジェクトのOnerrorイベントハンドラーを使用して実行できます。このイベントは、AJAXリクエストを行ったときにエラーが発生したときにトリガーされます。例は次のとおりです。


var xhr = new xmlhttprequest();
xhr.open( "get"、 'https://api.example.com/data'、true);
xhr .Onerror = function(){ console.log( "request失敗した ");
};
xhr.send();

POSTリクエストにVanilla Ajaxを使用できますか? XMLHTTPREQUESTオブジェクトのオープンメソッドは、最初の引數としてHTTPメソッドを受け入れます。したがって、「取得」を「投稿」に置き換えることができます。リクエストを送信する前に、SetRequestheaderメソッドを使用してコンテンツタイプのヘッダーを設定することを忘れないでください。リクエスト、JSONオブジェクトをストリング化し、リクエストの本文として送信する必要があります。また、コンテンツタイプのヘッダーをApplication/JSONに設定します。例は次のとおりです。

var xhr = new xmlhttprequest();

xhr.open( "post"、 'https://api.example.com/data'、true);

xhr .setRequestHeader( "Content-Type"、 "Application/json");

xhr.send(json.stringify({key: "value"})) > XMLHTTPREQUESTオブジェクトのABORTメソッドを呼び出すと、AJAXリクエストをキャンセルできます。これにより、リクエストはすぐに終了します。

vanilla javascriptを使用して同期Ajaxリクエストを作成できますか? 。同期リクエストを作成するには、オープンメソッドの3番目の引數としてfalseを渡します。 xmlhttprequestオブジェクトのonprogressイベントハンドラー。このイベントは、現在の進捗情報を提供して複數回トリガーされています。


他のJavaScriptライブラリまたはフレームワークでVanilla Ajaxを使用できますか? 。ネイティブのJavaScript機能であり、外部ライブラリに依存しません。

バニラajaxはすべてのブラウザーでサポートされていますか?

vanilla ajaxは、xmlhttprequestオブジェクトを使用して、すべての最新のブラウザによってサポートされています。ただし、インターネットエクスプローラーの古いバージョン(すなわち6以前)は、AjaxにActiveXオブジェクトを使用します。

以上がjQueryのないバニラ?アジャックスのガイドの詳細內容です。詳細については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當する法的責任を負いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Java vs. JavaScript:混亂を解消します Java vs. JavaScript:混亂を解消します Jun 20, 2025 am 12:27 AM

JavaとJavaScriptは異なるプログラミング言語であり、それぞれ異なるアプリケーションシナリオに適しています。 Javaは大規(guī)模なエンタープライズおよびモバイルアプリケーション開発に使用されますが、JavaScriptは主にWebページ開発に使用されます。

JSで日付と時間を操作する方法は? JSで日付と時間を操作する方法は? Jul 01, 2025 am 01:27 AM

JavaScriptで日付と時間を処理する場合は、次の點に注意する必要があります。1。日付オブジェクトを作成するには多くの方法があります。 ISO形式の文字列を使用して、互換性を確保することをお勧めします。 2。時間情報を取得および設定して、メソッドを設定でき、月は0から始まることに注意してください。 3.手動でのフォーマット日付には文字列が必要であり、サードパーティライブラリも使用できます。 4.ルクソンなどのタイムゾーンをサポートするライブラリを使用することをお勧めします。これらの重要なポイントを習得すると、一般的な間違いを効果的に回避できます。

なぜの下部にタグを配置する必要があるのですか? なぜの下部にタグを配置する必要があるのですか? Jul 02, 2025 am 01:22 AM

PLACSTHETTHETTHE BOTTOMOFABLOGPOSTORWEBPAGESERVESPAGESPORCICALPURPOSESESFORSEO、userexperience、andDesign.1.IthelpswithiobyAllowingseNStoAccessKeysword-relevanttagwithtagwithtagwithtagwithemaincontent.2.iTimrovesexperiencebyepingepintepepinedeeping

JavaScript vs. Java:開発者向けの包括的な比較 JavaScript vs. Java:開発者向けの包括的な比較 Jun 20, 2025 am 12:21 AM

javascriptispreferredforwebdevelopment、whilejavaisbetterforlge-scalebackendsystemsandroidapps.1)javascriptexcelsininintingtivewebexperiences withitsdynAmicnature anddommanipulation.2)javaofferstruntypyping-dobject-reientedpeatures

DOMでのイベントの泡立ちとキャプチャとは何ですか? DOMでのイベントの泡立ちとキャプチャとは何ですか? Jul 02, 2025 am 01:19 AM

イベントキャプチャとバブルは、DOMのイベント伝播の2つの段階です。キャプチャは最上層からターゲット要素までであり、バブルはターゲット要素から上層までです。 1.イベントキャプチャは、AddEventListenerのUseCaptureパラメーターをTrueに設定することにより実裝されます。 2。イベントバブルはデフォルトの動作であり、UseCaptureはfalseに設定されているか、省略されます。 3。イベントの伝播を使用して、イベントの伝播を防ぐことができます。 4.イベントバブルは、動的なコンテンツ処理効率を改善するためにイベント委任をサポートします。 5.キャプチャを使用して、ロギングやエラー処理など、事前にイベントを傍受できます。これらの2つのフェーズを理解することは、タイミングとJavaScriptがユーザー操作にどのように反応するかを正確に制御するのに役立ちます。

JavaScript:効率的なコーディングのためのデータ型の調査 JavaScript:効率的なコーディングのためのデータ型の調査 Jun 20, 2025 am 12:46 AM

javascripthassevenfundamentaldatypes:number、string、boolean、undefined、null、object、andsymbol.1)numberseadouble-precisionformat、有用であるため、有用性の高いものであるため、but-for-loating-pointarithmetic.2)ストリングリムムット、使用率が有用であること

JavaScriptアプリケーションのペイロードサイズをどのように削減できますか? JavaScriptアプリケーションのペイロードサイズをどのように削減できますか? Jun 26, 2025 am 12:54 AM

JavaScriptアプリケーションがゆっくりとロードされ、パフォーマンスが低い場合、問題はペイロードが大きすぎることです。ソリューションには、次のものが含まれます。1。コード分割(コードスプリッティング)を使用し、React.lazy()またはビルドツールを介して大きなバンドルを複數の小さなファイルに分割し、最初のダウンロードを減らすために必要に応じてロードします。 2。未使用のコード(Treeshaking)を削除し、ES6モジュールメカニズムを使用して「デッドコード」をクリアして、導入されたライブラリがこの機能をサポートしていることを確認します。 3.リソースファイルを圧縮してマージし、GZIP/BrotliとTerserがJSを圧縮できるようにし、ファイルを合理的にマージし、靜的リソースを最適化します。 4.頑丈な依存関係を交換し、day.jsやフェッチなどの軽量ライブラリを選択します

JavaScriptモジュールの決定的なJSラウンドアップ:ESモジュールvs CommonJS JavaScriptモジュールの決定的なJSラウンドアップ:ESモジュールvs CommonJS Jul 02, 2025 am 01:28 AM

ESモジュールとCommonJSの主な違いは、ロード方法と使用シナリオです。 1.CommonJSは同期的にロードされ、node.jsサーバー側環(huán)境に適しています。 2.ESモジュールは、ブラウザなどのネットワーク環(huán)境に適した非同期にロードされています。 3。Syntax、ESモジュールはインポート/エクスポートを使用し、トップレベルのスコープに配置する必要がありますが、CommonJSは実行時に動的に呼ばれるrequire/Module.Exportsを使用します。 4.CommonJSは、Expressなどのnode.jsおよびLibrariesの古いバージョンで広く使用されていますが、ESモジュールは最新のフロントエンドフレームワークとnode.jsv14に適しています。 5.混合することはできますが、簡単に問題を引き起こす可能性があります。

See all articles