0
what is the nature of the result of getElementsByClassName() ?
It was mentioned that getElementsByClassName() returns an array of the elements of with the class between the parentheses but i think it's a node list not an array. the difference that a node list does not have array methods like (push,slice ...) but both have a length property.
1 Answer
+ 1
var el = document.getElementsByClassName("test")
alert(typeof el) // object...just like [] and new Array() will report, sigh
alert(el) // [object HTMLCollection]
// dump iterable properties/functions, etc (can fail on security objects; use try...catch)
for(var i in el) document.write("<b>" + i + ": </b>" + el[i] + "<br/>");
Note: writing to the document will change the captured DOM; if you do this you may see a length of 0.
To avoid this you could set an element's innerHTML instead of using document.write().
Reference: https://developer.mozilla.org/en-US/docs/Web/API/HTMLCollection