我正在尝试在 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: 评论中建议的3N数组方法和@Joseph Myers所指的是创建一个数组'var student = []',大小为3 * 22000,然后使用student [0]作为名字,学生[1] 用于标记,学生 [2] 用于 DOB 等。
谢谢。