在我的應用程序工作,我有一個非常大的陣列(以防萬一60K記錄)。使用for
循環,我正在做一些操作,如下所示。如何與大陣在javascript
var allPoints = [];
for (var i = 0, cLength = this._clusterData.length; i < cLength; i+=1) {
if (allPoints.indexOf(this._clusterData[i].attributes.PropertyAddress) == -1) {
allPoints.push(this._clusterData[i].attributes.PropertyAddress);
this._DistClusterData.push(this._clusterData[i])
}
}
當我運行這個循環瀏覽器掛起,因爲它是非常大的&在Firefox是顯示彈出說「此頁上的腳本可能忙,或者它可能已停止響應。現在你可以停止腳本,或者你可以繼續看腳本是否會完成「。我該怎麼做才能讓瀏覽器不掛?
數據是什麼組成的,運行此循環後您的目標是什麼? –
你可以通過添加一些分頁或類似的東西來減少數據量。瀏覽器掛起,因爲它試圖處理所有的數據,所有的操作等到它完成。我建議你添加分頁或做一些數據標準化,以使其更快。 –
這是一個錯誤的方法,你的瀏覽器肯定會崩潰。您可以嘗試將任務分成2或3個不同的任務。這可能會解決你的問題 –