IE处理JS数组的一些问题

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;

原文地址:https://www.cnblogs.com/ling00218077/p/4185088.html