JavaScript の「 」キーワードについて聞きましたyield
。これは何に使用され、どのように使用すればよいのでしょうか?
ベストアンサー1
からの例を引用すると「Javascript の未来: ジェネレーター」公式ハーモニー規格の James Long による:
function * foo(x) {
while (true) {
x = x * 2;
yield x;
}
}
「foo を呼び出すと、 next メソッドを持つ Generator オブジェクトが返されます。」
var g = foo(2);
g.next(); // -> 4
g.next(); // -> 8
g.next(); // -> 16
は、yield
のようなものでreturn
、何かが返されます。return x
は の値を返しますx
が、yield x
次の値に向かって反復するメソッドを提供する関数を返します。メモリを大量に消費する可能性のある手順反復中に中断したい場合があります。