8

複雑な文字列template(おそらく、他の多くのタグを含む div など) があり、この HTML ノードを既存のドキュメントに複数回追加する必要があるとします。

毎回テンプレートから HTML ノードを作成する方が高速ですか?

var $html = $(template); // 1st run
var $html = $(template); // 2st run
...

または、それらを一度だけ作成してから複製するには:

var $template = $(template); // init
var $html = $template.clone() // 1st run
var $html = $template.clone() // 2st run
...
4

1 に答える 1

6

テンプレートの使用は、Operaを除くこれまでにテストされたすべてのブラウザーでのクローンよりも短いテンプレートの方が一貫して高速であるようです(1つのテストケース、同等のパフォーマンス)。テストケースをありがとうございました。

http://jsperf.com/clone-versus-template

アップデート:

これは、長いテンプレートとjQueryで構築されたテンプレートを使用したテストです。

http://jsperf.com/clone-versus-template/4

この最後のテストは、クローンメソッドがChrome、Firefox、Operaのテンプレートメソッドよりもはるかに優れていることを示していますが、IE9では同等です。

于 2012-10-20T14:40:53.410 に答える