Karena Javascript 1.7 ada objek Iterator , yang memungkinkan ini:
var a={a:1,b:2,c:3};
var it=Iterator(a);
function iterate(){
try {
console.log(it.next());
setTimeout(iterate,1000);
}catch (err if err instanceof StopIteration) {
console.log("End of record.\n");
} catch (err) {
console.log("Unknown error: " + err.description + "\n");
}
}
iterate();
apakah ada sesuatu seperti ini di node.js?
Saat ini saya sedang menggunakan:
function Iterator(o){
/*var k=[];
for(var i in o){
k.push(i);
}*/
var k=Object.keys(o);
return {
next:function(){
return k.shift();
}
};
}
tapi itu menghasilkan banyak overhead dengan menyimpan semua kunci objek k.
createNodeIteratoruntuk elemen DOM, saya bahkan tidak punya DOM;) @ c69: saya menyimpan semua data di keysobjek dan valuehanya disetel ke 1(sekitar 20MB di tombol 700k), memang, untuk sekarang saya hanya mengabaikan 'overhead' ini, tetapi saya lebih suka solusi yang lebih baik :)