Generatorのサンプル
Generatorの例です。
by s_hiroshi
JavaScript
/*
* ジェネレーターはfunction*とyieldキーワードを使った関数です。
*/
function* idMaker(){
var index = 0;
yield index++
yield index++
yield index++
}
function* idMakerAdvance(){
var index = 0;
while(true)
yield index++;
}
var gen = idMaker();
console.log(gen.next().value); // 0
console.log(gen.next().value); // 1
console.log(gen.next().value); // 2
console.log(gen.next().value); // undefined
console.log(gen.next().value); // undefined
console.log(gen.next().value); // undefined
var genAdvance = idMakerAdvance();
console.log(genAdvance.next().value); // 0
console.log(genAdvance.next().value); // 1
console.log(genAdvance.next().value); // 2
console.log(genAdvance.next().value); // 3
console.log(genAdvance.next().value); // 4
console.log(genAdvance.next().value); // 5