JavaScript で連想配列要素の大きな配列 (22,000 要素) を構築しようとしています。メモリ使用量に関してインデックスの長さを気にする必要はありますか?
つまり、次のオプションのどれがメモリを節約しますか? それともメモリ消費量は同じですか?
オプション1:
var student = new Array();
for (i=0; i<22000; i++)
student[i] = {
"studentName": token[0],
"studentMarks": token[1],
"studentDOB": token[2]
};
オプション 2:
var student = new Array();
for (i=0; i<22000; i++)
student[i] = {
"n": token[0],
"m": token[1],
"d": token[2]
};
Google Chrome DevTools でこれをテストしようとしましたが、決定を下すには数値に一貫性がありません。私の最善の推測は、配列インデックスが繰り返されるため、ブラウザは各学生に対して繰り返さないようにすることでメモリ使用量を最適化できるということです[i]が、それは単なる推測です。
編集: 明確にするために、問題は次のとおりです。多くの小さな連想配列を含む大きな配列。メモリ要件に関しては、長いインデックスまたは短いインデックスを使用することは重要ですか。
編集 2: コメントで提案され、@Joseph Myers が参照している 3N 配列アプローチは、サイズが 3*22000 の 1 つの配列 'var student = []' を作成し、名前、student に student[0] を使用することです[1] はマーク、学生 [2] は DOB など。
ありがとう。