HTMLは、データの表示方法を制御する方法です。次のようなHTMLタグを書くと:
<h1>Your Title</h1>
「Your Title」のテキストはデータです。 h1タグはプレゼンテーションです。ほとんどのシーズン開発者は、これらの2つのもの(データとプレゼンテーション)を可能な限り分離しようとします。この分離の背後にある考え方は単純です。データが常に単なるデータであれば、このデータの表示方法を変えることができます。 Googleは、Google Musicの見た目をリフレッシュしたいと考えています(私は彼らがすぐにやりたいことを願っています)。データモデルやAjaxコールの動作方法に触れる必要はなく、データはアーティスト名、トラックタイトルなど。
一方、データとプレゼンテーションを一緒に送信していた場合は、すべてを改訂する必要があります。新しいルック&フィールではアーティスト名がh1タグになることはありませんAJAX呼び出しは<h1>Artist title</h1>
を返します。新しいタグにアーティスト名を入力するのではなく、Ajax呼び出しがデータを返す方法を変更する必要があります。
これは設計パターンの中核となる基本原則であり、この原則に従う設計パターンはほとんどすべてです。 mvcについてこれまで聞いたことがあるなら、それはあなたの層の分離についてです。モデルはデータを表し、ビューはマークアップまたはプレゼンテーションを表し、コントローラはこれらの2つがどのように相互作用するかを制御するロジックを表します。
データ呼び出しでJSONを処理すると、後で問題に遭遇しないようになり、JSONは非常に単純なデータ形式であるため、コードがより洗練されて簡単になります。 (@ alex-gitelmanが既に言ったように、転送する方が速いです!)
私は、この質問に別の方法として「返されたJSONデータに基づいてHTMLクライアントサイドをjavascriptで構築する利点は何ですか?サーバーサイドにHTMLが構築され、AJAX経由で送信され、DOMに直接追加されます。 - 個人的に私は前者を後者よりも好む。私は実際に後者をやっていないし、本当に計画していない。 – WhiskeyTangoFoxtrot