1. JS 定义数组的标准写法是:
var a = [1,2,3];
而有的时候当我们不小心修改数组,拷贝粘贴过程过程中会多出逗号','如下:
var a = [1,2,3,];
或var a = [1,2,,3];
经过实验发现这种写法在各个浏览器的处理方式不相同:
(1)火狐和Chrome直接忽略逗号;
(2)IE10也直接忽略逗号;
(3)IE10以下版本处理的时候在逗号处填充undefined元素:即在IE10以下的浏览器的时候,相当于变成下面形式:
[1,2,3,undefined]或 [1,2,undefined,3]
(4)因此在IE10下数组a的长度,即a.length=3; 而在IE9下a.length=4;