JavaScriptの非同期/待機関数
Promiseオブジェクトは、非同期操作の最終的な完了(または失敗)とその結果の値を表します。 Asyncawait関数と演算子はpromiseで動作します。
非同期/待機関数は、舞台裏で非同期タスクを実行しながら、完全に同期しているように見えるコードを作成するのに役立ちます。
たとえば、promise-
を返す非同期関数があるとします。// Promise that resolves to 100 after 2sec function getHundred() { return new Promise(resolve => { setTimeout(() => { resolve(100); }, 2000); }); }
これを関数で使用したいのですが、戻り値を待つ必要があります。コールバックを使用して、次の方法でこれを行うことができます-
function useGetHundred() { getHundred().then((value) => { console.log(value); }) }
ただし、返されたデータに対して実行するコールバックを不必要に作成する必要があります。代わりに、async awaitを使用して、このコードを簡略化できます-
例
// Declare an async function. When this function is called, it'll also return a Promise // But inside this function any async calls can be made synchronous using await keyword async function useGetHundredAsync() { // wait for the getHundred promise to resolve then store its value in value. let value = await getHundred(); console.log(value) }
出力
100
-
JavaScriptの簡潔な矢印関数
簡潔な矢印関数の構文は次のとおりです- (param1, param2) =>param1+param2 のみがあり、単一のパラメータがある場合は、次のように記述することもできます- param1=>param1*2 の後に中括弧{}がない場合は、暗黙的に戻ります。 以下は、JavaScriptで簡潔な矢印関数を実装するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta na
-
JavaScriptのファーストクラス関数
JavaScriptは関数をオブジェクトとして扱い、関数をパラメーターとして別の関数に渡したり、他の関数から関数を返したりすることもできます。 JavaScriptでは、関数はファーストクラスの関数です。つまり、変数、オブジェクト、配列に格納できます。高階関数は、関数を取得するか、関数を返すか、またはその両方を実行できます。 以下は、JavaScriptでファーストクラス関数を実装するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT