JavaScriptでPromiseを実装する方法は?



JavaScriptのPromiseは、基本的に操作の非同期操作を処理するために使用されます。この記事は、概念を詳細に調査するのに役立ちます。

約束 基本的に、非同期操作の操作を処理するために使用されます。 promiseは、将来、解決された値またはエラーのいずれかの単一の値を生成する可能性のあるオブジェクトです。

この記事では、次のポイントについて説明します。





JavaScriptでの約束に関するこの記事から始めましょう

重要性:

処理する非同期操作が複数ある場合、promiseは便利です。 JavaScriptでpromiseが導入される前は、非同期操作を処理するために使用されるイベントとコールバック関数がありました。イベントは非同期操作の場合にはあまり役に立たないため、好ましくありません。コールバックに来て、それらを複数で使用すると、誰もがコードを理解するのが非常に困難になるほどの混乱を引き起こします。
したがって、Promisesは、非同期操作を最も簡単な方法で処理するためのすべてのコーダーの最初の選択肢です。コールバックやイベントよりも操作を簡単に処理できる高度な機能を備えています。



  • Promisesはコードを読み取り可能にします。つまり、開発の後の段階でもコーダーが編集できます。
  • コールバックやイベントと比較して、非同期操作全体でより適切に処理されます。
  • 高度なエラー処理も重要な機能と見なされます。
  • 非同期での制御定義のはるかに優れたフローがあります。

JavaScriptでの約束に関するこの記事に進む

状態のタイプ:

達成: 成功した約束に関連しています。
拒否されました: 拒否された約束に関連します。
保留中: 保留中の、つまり拒否も受け入れもされていない約束に関連します。
解決済み: 履行または拒否されている約束に関連します。

JavaScriptでの約束に関するこの記事に進む



約束の作成

promiseは、promiseコンストラクターを使用して作成されます。

構文:

2つのデータソースをブレンドするタブロー
var promise = new Promise(function(resolve、reject){//ここで何かを行う})

パラメーター:
Promiseコンストラクターは、コールバック関数という1つの引数を取ります。コールバック関数には、解決または拒否の2つの引数があります。操作はコールバック関数内で実行されます。すべてがうまくいった場合、呼び出しは解決されます。そうでない場合、呼び出しは拒否されます。

JavaScriptでの約束に関するこの記事に進む

例1:

var promise = new Promise(function(resolve、reject){/ *同じ内容のconstデータ型の2つの変数を宣言および定義します。* / const a = 'こんにちは!私の名前はYashで、コンピューターサイエンスに興味があります。' const b = 'こんにちは!私の名前はYashで、コンピュータサイエンスに興味があります。' //変数に格納されている両方のコンテンツが同じかどうかを確認するif(a === b){// resolve resolve()を呼び出す} else {//拒否reject()を呼び出す}})promise。 then(function(){console.log( 'Promise Resolved !!')})。 catch(function(){console.log( 'Promise Rejected !!')})

出力:
出力-JavaScriptでの約束-Edureka

JavaScriptでの約束に関するこの記事に進む

例2:

var promise = new Promise(function(resolve、reject){//整数値で2つの変数を初期化const x = 11 + 2 const y = 26/2 //両方の変数が等しいかどうかをチェックif(x === y ){// resolve resolve()を呼び出します} else {// react reject()を呼び出します}})promise。 then(function(){console.log( 'Promise is Resolved !!')})。 catch(function(){console.log( 'Promise is Rejected !!')})

出力:

JavaScriptでの約束に関するこの記事に進む

例3:

var promise = new Promise(function(resolve、reject){const i = 'Hello' const a = 'World' // 2つの変数を追加して値を別の変数に格納するconstj = i + a if((i + a )=== j){// resolve resolve()を呼び出します} else {// require reject()を呼び出す}})promise。 then(function(){console.log( 'Promise is Resolved !!')})。 catch(function(){console.log( 'Promise is Rejected !!')})

出力:

JavaScriptでの約束に関するこの記事に進む

約束の消費者

2つの登録機能があります。

then()

promiseが解決または拒否されると、then()が呼び出されます。

パラメーター:

  • promiseが解決されると、最初の関数が実行され、結果が受信されます。
  • promiseが拒否された場合、2番目の関数が実行され、画面にエラーが表示されます。

構文:

WindowsでEclipseを実行する方法
.then(function(result){//処理の成功}、function(error){//エラーの処理})

JavaScriptでの約束に関するこの記事に進む

約束が解決されたとき

// promiseの解決varpromise = new Promise(function(resolve、reject){resolve( '成功メッセージはここに書き込まれます!')})promise .then(function(successMessageishere){//成功処理関数が呼び出されますconsole.log (successMessageishere)}、function(errorMessageishere){console.log(errorMessageishere)})

出力:

JavaScriptでの約束に関するこの記事に進む

約束が拒否されたとき

// promiseの拒否varpromise = new Promise(function(resolve、reject){reject( '拒否メッセージはここに書き込まれます!')})promise .then(function(successMessage){console.log(successMessage)}、function( errorMessage){//エラーハンドラー関数が呼び出されますconsole.log(errorMessage)})

出力:

JavaScriptでの約束に関するこの記事に進む

キャッチ ((

何らかのエラーが発生したり、実行時にPromiseが拒否されたりすると、catch()が呼び出されます。
パラメーター:

  • catch()メソッドのパラメーターとして渡される関数は1つだけです。
  • この関数は、エラーを処理したり、拒否を約束したりするために構築されています。

構文:

.catch(function(error){//処理エラー})

JavaScriptでの約束に関するこの記事に進む

例1:

var promise = new Promise(function(resolve、reject){reject( 'Promise is Rejected')})promise .then(function(success){console.log(success)})。catch(function(error){//エラーハンドラー関数が呼び出されますconsole.log(error)})

出力:

JavaScriptでの約束に関するこの記事に進む

例2:

var promise = new Promise(function(resolve、reject){//エラーメッセージthrow new Error( 'There is some error!')})promise .then(function(success){console.log(success)})。catch (function(error){//エラーハンドラー関数が呼び出されますconsole.log(error)})

出力:

JavaScriptでの約束に関するこの記事に進む

例3:

キュウリjavaセレンwebdriverの例
var promise = new Promise(function(resolve、reject){//ここでエラーメッセージを編集できますthrow new Error( 'some erroroccurred!')})promise .then(function(Thissuccess){console.log(Thissuccess)} ).catch(function(Thiserror){//エラーハンドラー関数がconsole.log(Thiserror)を呼び出しました})

出力:

応用:
1.非同期イベントの処理。
2.非同期httpリクエストの処理。

これで、「JavaScriptの約束」に関するこの記事は終わりです。詳細を知りたい場合は、 信頼できるオンライン学習会社であるEdurekaによる。 EdurekaのJavaJ2EEおよびSOAトレーニングおよび認定コースは、Hibernate&SpringなどのさまざまなJavaフレームワークに加えて、コアJavaコンセプトと高度なJavaコンセプトの両方についてトレーニングするように設計されています。

質問がありますか?このブログのコメントセクションでそれについて言及してください。できるだけ早くご連絡いたします。