a.push()在数组中为其添加值
what does a.push() adds value to in an array?
我的问题是,如果在javascript中,我创建一个数组a = [2, 3, 4, 5]
,键入a[5] = 10
,然后键入a.push(5)
,那么编译器是在数组末尾还是在第一个未定义的点上添加5?
我发现它添加到数组的末尾,即a[6] == 5
。但我的问题是编译器如何发现一个数组是否已经结束?当然,如果它识别了一个未识别的值,它就不能决定数组已经结束,因为数组将在值5之后结束。那么,它怎么知道数组已经结束了呢?
来自MDN的Array.prototype.push()
:摘要
push()
方法将一个或多个元素添加到数组的末尾,并返回数组的新长度。
它知道结束在哪里,因为数组的length
在数值上总是大于数组中的最高索引。
var a = [1, 2, 3];
a[49] = 4;
document.write(a.join(" - "));
document.write("<br>");
document.write("Array length: " + a.length);
document.write("<br>");
a.push(5);
document.write("<br>");
document.write(a.join(" - "));
document.write("<br>");
document.write("Array length: " + a.length);
推送操作从a[a.length]
开始推送值,这导致数组按N项(在所描述的示例中为1)增长。
长度由使用的最大索引决定,因此在您的示例中,如果最大索引为[5]
,则6为长度。
相关文章:
- 在函数中添加数组元素的数值
- 在Codrops的内容中添加数组元素展开缩略图网格预览
- 在javascript中动态添加数组数组
- 在 javascript 中添加数组到数组
- 如何使用推送在 JavaScript 中添加数组值
- 设置和添加数组值javascript时出现问题
- 使用 JavaScript 添加数组对象
- 将文件转换为数组并使用数据列表和选项标签为自动完成文本框添加数组元素
- 单击时将值推送到数组,然后循环添加数组值.Javascript
- 如何使用 JavaScript 更新或添加数组中的值
- 在窗体中动态添加数组文本框
- 在 javascript 中添加数组和对象会产生错误
- 如何在JavaScript中更新/添加数组的元素
- 在JavaScript中添加数组中的值
- 通过for循环添加数组值
- 如何在HTML中从Javascript添加数组的滚动列表
- Vaildate动态添加数组输入-jQuery Validate
- 在HighChart android中添加数组数据
- AngularJS:防止再次添加数组中已有的项
- 添加数组元素到现有的javascript数组