2011-02-18 8 views
1

一般的なJavaScriptに関する質問があります。私はあなたに私のシナリオを与えて、あなたに質問します。パラメータとして渡される定数を使用したJavascriptの効率

シナリオ

私は(現在は)3000行を超えるでテーブルを作っています、そしてそれは毎日5-10で成長しています。私はこの表のスタイルを設定し、便利な機能を追加するためにjavascriptプラグインを使用しています。現在、ページを完全に読み込むのに15秒かかります。その後、すべてがスムーズに実行されます(並べ替え、ページングなど)。しかし、それは非常に遅い初期荷重です。プラグインは、DOM解析が少ない方法を提供しています。ここでは、テーブルの中に配置する情報の配列を渡します。この情報は、私が非常に興味を持っています。しかし、私はできるだけ早くこれを作っていきたいと思います。3000行の配列があります(それぞれ11列、平均10文字)。

質問

この巨大な配列を格納するためにJavaScript のconstを使用することが非常に速くなるでしょうか?具体的には、パラメータとして渡された場合、constをスタックに入れないことをJavaScriptが知っていますか?

さらに、これはJavaScriptが処理するにはあまりにも多すぎますか?このアイデアを却下して、AJAXから開始する必要があります(これははるかに低速な機能ですが、ページロードをはるかに高速化することを意味します)。

ありがとうございます!

+2

私のサイトであれば、あまりにも多くのデータを丸くするのを避けるためにAJAXを使用します。 – mellamokb

+0

1) "javascript plugin"とは何ですか? 2)あなたがDOMを扱っている場合、これはもはや「これはJavaScriptが扱うにはあまりにも多いのですか?」という問題ではありません。むしろ「これはブラウザのDOMの実装が処理するにはあまりにも多いのですか?」 3)私は空気の引用符が好きです。 –

+0

ここに私が使っていると思っているものがあります: 'http:// www.datatables.net/examples/data_sources/js_array.html' – Garrett

答えて

1

ページが読み込まれるとインタラクションが速いと言うので、データを転送するのが最大のボトルネックだと思います。

私は非常に軽量ロード高速です(gzipで圧縮)JSON、すべてを送信します。

私はスタイリングがJSではなくCSSで行われるべきだと思います。また、最高のUX のテーブルをと小さくして(1-200要素)で初期化し、残りの部分を処理したい場合もあります。あなたが何かを最初に見せてくれれば、ユーザーにとってはより良いことです。

GCがクリアされるため、アレイの格納に問題はありません。

+0

私はちょうど巨大なJS配列を使用して実装しようとし、pageloadを15秒から6秒にカットしましたが、それでも十分に速くはありません。私は今、AJAXとJSONを使用するつもりです。ありがとう=) – Garrett

+0

@ガレット - 問題ありません。 :) – galambalazs

関連する問題