решил написать метод который возвращал бы всех потомков. Прочитал что все DOM объекты налсдедуют методы от Node.prototype. Закинул я в Node.prototype функцию ниже и всё работает да вот только не в ие 8, где объекта Node вообще нету, так вот вопрос откуда тогда DOM элементы наследуют методы и свойства в 8ие?

Чтобы туда закинуть этот метод  и как вообще определить от какого объекта происходит наследование?? если б не прочитал про Node.prototype, то так бы и не понял, что именно в него нужно записывать метод, также можно в Object.prototype, но тогда это затронит все объекты, а мне это не нужно ( кстати и через Object.prototype в ие 8 борода((( )
 
Node.prototype.getAll = function () {
	var c = this.children,
    mas = [];
  (function f(node) {
    
  	for (var i=0; i < node.length; i++) {
    
     mas.push(node[i]);
     
     if (!node[i].children.length) continue
     
     else {
     
     	 var k = node[i].children;
     	 f(k);
     
     }
    }
  
  
  })(c);
return mas;
}
console.log(document.documentElement.getAll())