Если не пользоваться разнообразными фреймворками типа jquery, возникает потребность перебрать массив без написания for, указания length и прочей ерунды, обычно не нужной.
Пример:
Ast.menu(something.childNodes, function(o){
o.className = 'example';
// ... какой-то другой код с o.
})
Сама функция:
var Ast = {
menu: function(oc, fFunction)
{
for(var i = 0; i < oc.length; i++)
{
fFunction(oc[i]);
}
}
}
Можно было приписать menu к любым Array, но childNodes - не массив, а именно для этого, как правило и нужен menu.
Array.prototype.menu = function(fAction){
for (var i = 0; i < this.length; i++)
{
fAction(this[i]);
}
}