Update: A NodeList
can be treated as an array in some ways - you don't actually have to do anything special with it before you can loop over it, for example:
var aDivs = [];
for (var = i = 0; i < divs.length; i++) {
aDivs.push(divs[i]);
}
This will create an array with all of the nodes that matched when you ran document.getElementsByTagName()
See this question for a full explanation of why slice
works with a NodeList
in some browsers but not others, but it boils down this this sentence from the specification:
Whether the slice function can be applied successfully to a host object is implementation-dependent.