PROTOTYPES & FUNCTIONS
(function(){
// PUNTEROS ARRAY
Array.prototype.currentNum = 0;
Array.prototype.current = function(){
    return this[ this.currentNum ];
};
Array.prototype.next = function(){
    return this.currentNum+1<this.length ? this[ ++this.currentNum ] : false;
};
Array.prototype.prev = function(){
    return this.currentNum-1>0 ? this[ --this.currentNum ] : false;
};
Array.prototype.end = function(){
    return this.length>0 ? this[ this.currentNum = this.length-1 ] : false;
};
Array.prototype.reset = function(){
    return this[ this.currentNum = 0 ];
};
})();
function current(a){
    return a.current();
};function next(a){
    return a.next();
};function prev(a){
    return a.prev();
};function end(a){
    return a.end();
};function reset(a){
    return a.reset();
};

EJEMPLO
var a1 = ["marco", "polo", "aguilar", "zambrano", "xd"];
do{
document.write( current( a1 ) +" | " );
}while( next( a1 ) );
RESULTADO