我需要将类似数组的对象转换为真实数组。我正在使用getElementsByTagName来获取元素列表。

var tablerow = document.body.getElementsByTagName('tr');
console.log(tablerow);

var tablerowArr = Array.prototype.slice.call(tablerow)
console.log(tablerowArr);


在Chrome中,tablerowArr可以正确转换为具有相同数量项的数组。但是在Firefox和IE中,它有0个项目。

我做错了什么?

注意:我正在这样做,所以我可以使用

tablerowArr.forEach(function (value, i) { ...do stuff }

最佳答案

我想到了。我使用HTML5导入的WebComponents.JS,这在Firefox和IE上导致错误。我禁用了HTML5导入,并将html直接放在页面上,效果很好。

10-07 12:15