サーバーから大量のデータを取得することを含む、雇用主向けの Web アプリケーションをテストしています。データは、次のように jQuery の$.map関数を使用して配列に変換する大量のサブオブジェクトを含む、 $.ajax関数を使用して JSON オブジェクトとして返されます。
data_points = $.map(result.data.LotsOfIt, function(value, ndx){
return value;
}); //Throws Maximum call stack size exceeded with large data set.
これは Chrome のスタック サイズ制限を使い果たしているようです。この関数を実行するたびに、Chrome はRangeError: Maximum call stack size exceededをスローします。返されるデータの量を減らすと、問題なく動作します。興味深いのは、FireFox と IE9 がより大きなデータ セットを適切に処理することですが、Chrome はこれらのブラウザーのいずれよりもスタック サイズの制限が大きいと考えていたため、両方とも同様に失敗すると予想していました。他の誰かがこの問題に遭遇しましたか? 回避策はありますか? または、このエラーを回避するために返されるデータの量を制限するようにコードを更新する必要がありますか?