还有一个小坑,看代码第一行这句会在IE8以及之前版本中创建一个值分别为1,2,undefined的数组,其他浏览器会产生一个两项分别是1,2的数组第二行同样的可能会在不同浏览器上包含5项或者6项。delect 运算符对数组的操作不会删除掉数组的元素,可以说是用undefined来占个位子,和直接赋值是一样的。  稀疏数组是指数组的下标并不是从0开始,一般数组的长度要比元素的个数要多:arr1中是因为数组第1列是有值的,虽然是undefined,arr2只是指定了数组长度,第1列还是没有值,所以用in语句会返回false。

浅谈Javascript数组(推荐)

浅谈Javascript数组(推荐)