也就是说,如果我使用当前时间作为数组的索引:
array[Date.getTime()] = value;
Run Code Online (Sandbox Code Playgroud)
解释器会实例化从0到现在的所有元素吗?不同的浏览器有不同的做法吗?
我记得曾经是AIX内核中的一个错误,它会根据请求创建伪ttys,但如果你这样做,比如"echo>/dev/pty10000000000"它会创建/ dev/pty0,/ dev/pty1, ......然后摔倒了.在贸易展览会上很有趣,但我不希望这发生在我的客户身上.
C编程语言被称为零索引数组语言.使用可访问数组中的第一项0.例如double arr[2] = {1.5,2.5},数组中的第一项arr位于位置0. arr[0] === 1.5哪些编程语言是基于1的索引?
我听说这些语言从1开始而不是0开始用于数组访问:Algol,Matlab,Action !, Pascal,Fortran,Cobol.这完整吗?
具体而言,基于1的阵列将访问具有1的第一项,而不是零.
我知道JavaScript中的数组只不过是一个对象.当我定义这样的数组时:
var array;
array = [ "a", "b", "c" ];
Run Code Online (Sandbox Code Playgroud)
并运行
Object.keys(array);
Run Code Online (Sandbox Code Playgroud)
我得到以下数组:["0", "1", "2"].数组长度array是3.
当我添加一个属性,如:
array["a"] = "d";
Run Code Online (Sandbox Code Playgroud)
Object.keys()正在返回["0", "1", "2", "a"],但数组长度array仍然是3.
但是当我添加这样的属性时:
array["3"] = "d";
Run Code Online (Sandbox Code Playgroud)
array现在的长度4.
如果array只是另一个对象,当我从头开始创建对象时,如何实现这种行为var myArray = {}?
问题是Object.mappings有3个元素清楚地打印在控制台中console.log(),但是当我尝试找到数组的长度时,它返回了0。我尝试对数组进行字符串化,它仅显示“ []”。
我在这里做错了什么?
我有一个包含子数组的父数组.length父数组上的属性显示0结果,即使存在子数组也是如此.
这是代码:
var balances = [];
balances['kanav'] = 50;
balances['yash'] = 50;
alert(balances.length);
console.log(balances);Run Code Online (Sandbox Code Playgroud)
什么原因?