我经常想用 forEach 或 map 遍历 NodeList。我的简化代码是这样工作的:
var nodeListMap = Array.prototype.map;
var els = document.querySelectorAll('.classname');
nodeListMap.call(els, function(el){...});
这工作正常。但是,我宁愿不必这样map.call
做,但如果我这样做......
var nodeListMap = Array.prototype.map.call;
var els = document.querySelectorAll('.classname');
nodeListMap(els, function(el){...});
然后它返回
TypeError: object is not a function
我怎样才能修改代码,所以我只是这样做nodeListMap(array, fn)
?