2017-10-07 12 views
0

からES6 iteration over object values私はオブジェクト値に対して反復処理を行いました。ここに私の実装です:JavascriptとTypescript:for..ofを使ったオブジェクトの反復

function* entries (obj): IterableIterator<any> { 
    for (const key of Object.keys(obj)) { 
     const value = obj[key]; 
     yield [ 
      key, 
      value, 
     ]; 
    } 
} 

その後、私はrender()でのコンポーネントのメソッド反応することを利用したい:

をしかし、私はこのコードをデバッグする場合。 Chrome開発者コンソールのmapファイル、newVarは空の配列です。 entriesジェネレータでobjにアラートすると、適切なオブジェクトが得られます。私は何かが本当にシンプルに欠けていますかすべての回答をお待ちしております。私はes5オプションでTypescriptを使用して、それが発電機をサポートしていることを読む:Generators and Iteration for ES5/ES3

+1

Btwでは、 'that'もIIFEも必要ないはずです。 – Bergi

+1

リンクしたTypeScriptドキュメントに記載されているように ' - downlevelIteration'フラグを渡していますか? – Bergi

+0

@Bergi私はそうではありませんでした:)ありがとう、ありがとう、あなたが私に答える前に数時間を無駄にします。あなたの投稿を新しい回答として書いてください。私はそれを受け入れます。私はそれが何か愚かな単純だと分かっていた:) –

答えて

2

私はes5オプションで活字体を使用して、私はそれが発電機サポートしていることを読む:Generators and Iteration for ES5/ES3を。

また、--downlevelIterationフラグを使用する必要があるとも言われています。さもなければ、プロパティなしでジェネレータインスタンスのようなiterablesで失敗する配列の反復には、for … of - ループがまだ転移します。

関連する問題