2010-09-25 33 views
1

我剛開始使用數據表(java腳本)作爲表格數據,由於js我可以使用搜索功能,每頁有多少行,排序和分頁。 在使用js之前,我只是在表格中顯示數據(使用Ajax進行分頁),但無法使用上述功能(在這種情況下性能很好)。 現在我正在使用表結構的jquery.dataTables.js和jquery.js文件。但問題是,這嚴重影響了網站的性能,最初所有的腳本都只在一頁之內,然後firefox發出警告消息爲「無響應的腳本」,然後我爲表創建了單獨的文件,然後我停止獲取此消息但性能較差。 我所做的是,從API獲取數據,將其存儲到數據庫中,然後顯示它,但是js花費了大量的時間,有時在數以千計的數據時它不會顯示錶。
我真的需要使用js表,但無法承受這種糟糕的表現。 有人有過這個問題嗎?
等待寶貴意見。Javascript敲擊性能

回答

1

您無法在Javascript中高效地存儲和操作數千行數據。 MySQL等數據庫引擎具有各種各樣的gubbins(索引,緩存),以加快搜索(查詢)速度。 JavaScript沒有這一點,你可以儘可能多地優化你的存儲和搜索算法,但你永遠不會完成一個有效的解決方案。

分頁應該在服務器上。服務器向您發送30行數據,當您需要更多數據時,您向服務器請求更多數據;通常採用新頁面加載的形式,以用另一組結果替換當前內容,或者將新內容附加/添加到現有AJAX請求。

當您要搜索數據時,使用Javascript很適合在頁面(~10行)內搜索內容,但是爲了搜索整個數據集,請將查詢發送到服務器並讓數據庫引擎做這項工作。

+0

謝謝你馬特,爲您的答覆! – Rishi2686 2010-09-25 09:23:11