兼容浏览器将NodeList对象转换为数组

 1 function converToArray(nodes) {
 2     var array = null;
 3     try {
 4         array = Array.prototype.slice.call(nodes, 0); //针对非IE浏览器
 5     } catch (ex) {
 6         array = new Array();
 7         for (var i = 0, len = nodes.length; i < len; i++) {
 8             array.push(nodes[i]);
 9         }
10     }
11 
12     return array;
13 }

这个convertToArray()函数首先尝试了创建数组的最简单方式。如果导致了错误(说明是在IE8及更早的版本中),则通过try-catch块来捕获错误,然后手动创建数组。

posted @ 2016-05-05 15:11  Yvette1014  阅读(508)  评论(0编辑  收藏  举报