var arr = [];
arr[0] = 'a';
arr[1] = 'b';
arr.foo = 'c';
console.log(arr.length);//2 为什么不是3呢
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
http://es5.github.io/#x15.4.5.2
length返回的是array的数组索引长度,数组索引只能是数字,如果是字符串的相当于对象属性了。
arr.foo = 'c';
执行后arr
仍然是["a", "b"]
数据不支持
arr.foo
赋值可以使用
arr[2] = 'c'