O usi gli iteratori nativi (controlla la compatibilità dei browsers):
codice:
var miaVariabile = [ "A", "B", "C", "D", "etc." ];
var miaCollezione = new Iterator(miaVariabile);
alert(miaCollezione.next()[1]); // "A"
alert(miaCollezione.next()[1]); // "B"
alert(miaCollezione.next()[1]); // "C"
alert(miaCollezione.next()[1]); // "D"
alert(miaCollezione.next()[1]); // "etc."
// a questo punto genera errore!
alert(miaCollezione.next());
O ti costruisci tu un iteratore:
codice:
function Iteration (oCollection) {
this.current = 0;
this.collection = oCollection;
}
Iteration.prototype.next = function () {
return this.collection[this.current++ % this.collection.length];
}
// ........
var miaVariabile = [ "A", "B", "C", "D", "etc." ];
var miaCollezione = new Iteration(miaVariabile);
alert(miaCollezione.next()); // "A"
alert(miaCollezione.next()); // "B"
alert(miaCollezione.next()); // "C"
alert(miaCollezione.next()); // "D"
alert(miaCollezione.next()); // "etc."
// riparte da 0...
alert(miaCollezione.next()); // "A"