jQuery を使用してクライアント側の HTML を作成すると、適切に行えばパフォーマンスが大幅に向上することがわかりました。JSON を返す AJAX を使用して動的コンテンツを取得し、関連する HTML を作成して jQuery を使用して挿入します。初めてこの手法をいじったとき、IE の JavaScript の文字列連結子の実行が非常に遅く、50 行以上の動的テーブルを作成するとパフォーマンスが低下することがわかりました。
var shtml = '<table>';
for (var i = 0; i < 100; i++) {
shtml += '<tr><td>A bunch of content</td></tr>';
}
shtml += '</table>';
$('#myTable').append(shtml);
その後、すべてを変える文字列連結の手法を見つけました。文字列演算子を使用する代わりに、+=
配列を使用して連結を行います。
var shtml = ['<table>'];
for (var i = 0; i < 100; i++) {
shtml.push('<tr><td>A bunch of content</td></tr>');
}
shtml.push('</table>');
$('#myTable').append(shtml.join(''));
パフォーマンスが大幅に向上することがわかりました。しかし、今では約 100 行の上限があり、ブラウザー自体が一度に大量のコンテンツを動的に挿入するのに苦労しているのが見え始めます。動的 HTML の大規模なセットの次のパフォーマンス向上を達成するために使用できるポインターまたはテクニックを誰かが持っていますか?