【js 致死点】数组

数组是一种特殊的对象,键值就是0,1,2数字

  • 非正常操作
    因为数组继承对象,in 的操作也会遍历出非数字键的对象
var a = [];

a['p'] = 'abc';
a.length // 0

a[2.1] = 'abc';
a.length // 0
console.log(a)  // [p: "abc", 2.1: "abc"]
  • Array.length
    Array.length 不能过滤undefined
var a = [1, 2, 3];
delete a[1];

a[1] // undefined
a.length // 3

你可能感兴趣的:(【js 致死点】数组)