covert dom node list in IE

如需将 DomCollection 转换成Array, 常用的方法是 Array.prototype.slice.call(list,0)。不过在IE下无法工作,应为DOMCollection对象与标准的Dom对象不同。建议用额外的方法去完成,从而保证兼容性.

1
2
3
4
5
6
7
8
function toArray(obj) {
var array = [];
// iterate backwards ensuring that length is an UInt32
for (var i = obj.length >>> 0; i--;) {
array[i] = obj[i];
}
return array;
}

参考

How to convert a DOM node list to an array in Javascript?
Array.prototype.slice.call()方法详解