問題タブ [ecmascript-2017]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - チェーン非同期関数
非同期関数では、次のように非同期値を取得できます。
const foo = await myAsyncFunction()
結果に対してメソッドを呼び出したい場合は、同期関数を使用して次のようにしますmyAsyncFunction().somethingElse()
非同期関数で呼び出しをチェーンすることは可能ですか、それとも結果ごとに新しい変数を割り当てる必要がありますか?
javascript - setTimeout で async を使用することは有効ですか?
Javascript に非同期関数があり、それに setTimeout を追加しました。コードは次のようになります。
setTimeout の目的は、関数が実行される前に 2 秒を追加することです。ユーザーが入力を停止したことを確認する必要があります。
とにかく setTimeout は非同期なので、この関数から async/await を削除する必要がありますか?
javascript - Promise オブジェクトを同期する方法は?
同期する必要がある promise オブジェクトがあります。たとえば、最初の約束が完了する前に、2 番目の約束が機能するべきではありません。最初のものが拒否された場合、最初のものを再度実行する必要があります。
いくつかの例を実装しました。これはうまく機能します。getVal を呼び出し、2000ms 待ち、戻り、i++、再度 getVal を呼び出す .....
しかし、promise オブジェクトの配列を制御する必要があります。私がやりたいことは、データがあり、それを5つに分割したことです。最初の部分が処理された後 (例: サーバーに送信)、2 番目の部分を処理したい場合は、最初の部分を再度処理する必要があります。
これは私が作ったプロトタイプの実装です
このコードの Promise オブジェクトは順次動作します。最初の例として同期的に動作するように、以下のコードを修正するにはどうすればよいですか。
javascript - forEach で async await
期待どおりに機能する次の機能があります。
async await を使用するようにリファクタリングし、次のように forEach の本体で async 関数を呼び出します。
forEach が非同期で実行され、関数が実行されて終了するため、これは明らかに関数を壊します。
forEach を同期的に実行するために async await を使用する方法はありますか。ジェネレーターにリファクタリングできますか?
javascript - React-Native:babel を ES7 に更新できません
新しい ES7 機能の async/await を使用しようとしていますが、反応ネイティブの node_modules で確認できる限り、そこにはありません。
反応ネイティブ バージョン 0.31 を持っていて、それを 0.32 に更新したところです。babel がまだ ES7 機能で更新されていないことがわかります。そのため、async/await を使用できません。どうすればそれを機能させることができるか知っていますか?
javascript - Async / Await JS Catch が try/catch で機能しない
私は以下のJavaScriptを少し持っています。ES6 プロジェクトで async/await を使用します。突然 404 応答コードがヒットしないことに気付きました。実際、.json() もコンソール エラーをスローしていますが、まだキャッチにヒットしていません。すぐにスローしてコードの catch ブロックに移動しようとすると、エラーが発生することが予想されます。
javascript - 待機中の値を返すと、Promise? が返されます。(es7 非同期/待機)
ログに記録しPromise { <pending> }
ます。の代わりに Promise を返すのはなぜ'somestring'
ですか?
これをコンパイルするために Babel ES7 プリセットを使用しています。
javascript - eslint await Expected an assignment or function call and instead saw an expression
When I place this code for a promise that the result is not needed to proceed:
I'm getting this eslint error:
[eslint] Expected an assignment or function call and instead saw an expression. (no-unused-expressions)
If the code is like this:
Then the eslint error is:
[eslint] 'dummy' is defined but never used (no-unused-vars)
Anyone knows how this should be fixed (I know I could do // eslint-disable-line no-unused-expressions
but I'm looking if there is a better syntax for this statement.
javascript - co と await の違い
私はこのコードの違いを本当に理解していません:
そして、この他のもの:
ブラウザーまたはサーバー (node.js) で使用される各コードの長所/短所 (主にパフォーマンス、読みやすさ、およびフロー制御の観点から) と、co ( co 外部ライブラリーに依存) または await (これはまだ ES7 の一部ではなく、babel-polyfillに依存しています) が使用されます。