function.sentメタプロパティが実装された
概要
ジェネレータ内で直近に送られた値を返すfunction.sentメタプロパティが実装された。
基本
これが
function *gfn() { let v = yield console.log( v ) } let gen = gfn() gen.next() gen.next( 42 ) //*log* "42"
こう書けるようになった。
function *gfn() { yield console.log( function.sent ) } let gen = gfn() gen.next() gen.next( 42 ) //*log* "42"
最初に送られた値を取得する
今までは、最初にnextメソッドで送られた値を取得する方法が無かったが、このメタプロパティを使えば取得することが出来る。
例:function.sent無し
gen = gfn( A ) gen.next( B ) gen.next( C ) function *gfn( A ) { // B を取得する方法がない let C = yield }
例:function.sent有り
gen = gfn( A ) gen.next( B ) gen.next( C ) function *gfn( A ) { let B = function.sent // B を取得できる。 let C = yield }
実装されるバージョン
V8 4.10.99