Kā ieviest solījumus JavaScript?



Solījumi JavaScript pamatā tiek izmantoti asinhrono darbību apstrādei. Šis raksts palīdzēs detalizēti izpētīt koncepciju.

Solījumi galvenokārt tiek izmantoti, lai apstrādātu darbības ar asinhronām darbībām. Solījums ir objekts, kas nākotnē var radīt vienu vērtību: vai nu atrisinātu vērtību, vai kļūdu.

Šajā rakstā tiks apskatīti šādi norādījumi,





Sāksim ar šo rakstu par solījumiem JavaScript

Svarīgums:

Solījumi ir noderīgi, ja ir jāveic vairākas asinhronas darbības. Pirms solījumi tika ieviesti JavaScript, asinhrono darbību apstrādei tika izmantoti notikumi un atzvanīšanas funkcijas. Tā kā notikumi nav daudz noderīgi asinhronu darbību gadījumā, tiem netiek dota priekšroka. Pārnākot uz atzvanīšanu, izmantojot tos vairākkārt, tas radītu tādu jucekli, ka ikvienam bija ļoti grūti saprast kodu.
Tāpēc solījumi ir katra kodētāja pirmā izvēle, kā vienkāršāk apstrādāt asinhronās darbības. Viņiem ir uzlabotas funkcijas, kas ļauj viņiem viegli apstrādāt darbības, nevis atzvanīšanu un notikumus.



  • Solījumi padara kodu lasāmu, kas nozīmē, ka kodētāji to var rediģēt arī vēlākā izstrādes posmā.
  • Asinhrono darbību laikā ir labāka vadāmība, salīdzinot ar atzvanīšanu un notikumu.
  • Uzlabota kļūdu apstrāde tiek uzskatīta arī par svarīgu funkciju.
  • Ir daudz labāka vadības definīcijas plūsma asinhronā.

Turpinot šo rakstu par solījumiem JavaScript

Valstu veids:

Izpildīts: Saistīts ar tiem solījumiem, kuri ir izpildīti.
Noraidīts: Saistīts ar tiem solījumiem, kuri tiek noraidīti.
Gaida: Saistīts ar gaidāmajiem solījumiem, t.i., nav noraidīts vai pieņemts
Apmeties: Saistīts ar tiem solījumiem, kuri tiek izpildīti vai noraidīti.

Turpinot šo rakstu par solījumiem JavaScript



Solījumu radīšana

Solījums tiek izveidots, izmantojot solījumu konstruktoru.

Sintakse:

var solījums = jauns solījums (funkcija (atrisināt, noraidīt) {// dari kaut ko šeit})

Parametri:
Promise konstruktors aizņem vienu argumentu, atzvanīšanas funkciju. Atzvana funkcijā ir divi argumenti: atrisināt vai noraidīt. Darbības tiek veiktas atzvanīšanas funkciju ietvaros, ja viss noritēja labi, zvans atrisināsies, pretējā gadījumā zvans tiek noraidīts.

Turpinot šo rakstu par solījumiem JavaScript

1. piemērs:

līdzības starp java un javascript
var solījums = jauns solījums (funkcija (atrisināt, noraidīt) {/ * paziņo un definē divus konst datu tipa mainīgos ar tādu pašu saturu. * / const a = 'Sveiki! Mani sauc Yash, un mani interesē datorzinātnes.' const b = 'Sveiki! Mani sauc Yash, un mani interesē datorzinātnes.' // pārbauda, ​​vai abi mainīgajos saglabātie dati ir vienādi vai nav, ja (a === b) {// zvana atrisināt atrisināt () } cits {// zvana noraidīt noraidīt ()}}) solījums. tad (function () {console.log ('Solījums atrisināts !!')}). catch (function () {console.log ('Solījums noraidīts !!')})

Izeja:
Rezultāts- solījumi JavaScript- Edureka

Turpinot šo rakstu par solījumiem JavaScript

2. piemērs:

var solījums = jauns solījums (funkcija (atrisināt, noraidīt) {// inicializējot divus mainīgos ar veselu skaitļu vērtībām const x = 11 + 2 const y = 26/2 // pārbaudot, vai abi mainīgie ir vienādi vai nav, ja (x === y ) {// zvana atrisināt atrisināt ()} cits {// zvana noraidīt noraidīt ()}}) solījums. tad (function () {console.log ('Solījums ir atrisināts !!')}). catch (function () {console.log ('Solījums ir noraidīts !!')})

Izeja:

Turpinot šo rakstu par solījumiem JavaScript

3. piemērs:

var solījums = jauns solījums (funkcija (atrisināt, noraidīt) {const i = 'Labdien' const a = 'Pasaule' // veicot divu mainīgo pievienošanu, lai saglabātu vērtību citā mainīgajā const j = i + a if ((i + a ) === j) {// zvana atrisināt atrisināt ()} cits {// zvana noraidīt noraidīt ()}}) solījums. tad (function () {console.log ('Solījums ir atrisināts !!')}). catch (function () {console.log ('Solījums ir noraidīts !!')})

Izeja:

kā instalēt php uz Windows 7

Turpinot šo rakstu par solījumiem JavaScript

Patērētāji solījumos

Ir divas reģistrēšanas funkcijas:

pēc tam ()

Kad solījums tiek atrisināts vai noraidīts, tiek izmantots ().

Parametri:

  • Ja solījums ir atrisināts, tiek izpildīta pirmā funkcija un tiek saņemts rezultāts.
  • Ja solījums tiek noraidīts, tiek izpildīta otrā funkcija un ekrānā tiek parādīta kļūda.

Sintakse:

.tad (funkcija (rezultāts) {// apstrādes panākumi}, funkcija (kļūda) {// kļūdas apstrāde})

Turpinot šo rakstu par solījumiem JavaScript

Piemērs

Kad solījums ir atrisināts

// solījuma atrisināšana var solījums = jauns solījums (funkcija (atrisināt, noraidīt) {atrisināt ('Veiksmes ziņojums ir rakstīts šeit!')}) solījums. tad (funkcija (successMessageishere) {// veiksmes apstrādes funkcija tiek izsaukta console.log (successMessageishere)}, funkcija (errorMessageishere) {console.log (errorMessageishere)})

Izeja:

Turpinot šo rakstu par solījumiem JavaScript

Kad solījums tiek noraidīts

// solījuma noraidīšana var solījums = jauns solījums (funkcija (atrisināt, noraidīt) {noraidīt ('Šeit tiek rakstīts noraidīšanas ziņojums!')}) Solījums. Tad (funkcija (successMessage) {console.log (successMessage)}, funkcija ( errorMessage) {// tiek izsaukta kļūdu apstrādātāja funkcija console.log (errorMessage)})

Izeja:

Turpinot šo rakstu par solījumiem JavaScript

Noķert ( )

Ikreiz, kad ir kāda veida kļūda vai solījums tiek noraidīts izpildes laikā, tiek izsaukts catch ().
Parametri:

  • Catch () metodē kā parametrs tiek nodota tikai viena funkcija.
  • Šī funkcija ir izveidota, lai apstrādātu kļūdas vai solītu noraidījumus.

Sintakse:

.catch (funkcija (kļūda) {// apstrādes kļūda})

Turpinot šo rakstu par solījumiem JavaScript

1. piemērs:

var solījums = jauns solījums (funkcija (atrisināt, noraidīt) {noraidīt ('solījums ir noraidīts')}) solījums. tad (funkcija (panākumi) {console.log (panākumi)}) .catch (funkcija (kļūda) {// tiek izsaukta kļūdu apstrādātāja funkcija console.log (kļūda)})

Izeja:

Turpinot šo rakstu par solījumiem JavaScript

2. piemērs:

c ++ fibonacci secība
var solījums = jauns solījums (funkcija (atrisināt, noraidīt) {// kļūdas ziņojums mest jaunu kļūdu ('Ir kāda kļūda!')}) solījums. tad (funkcija (panākumi) {console.log (panākumi)}) .catch (funkcija (kļūda) {// tiek izsaukta kļūdu apstrādātāja funkcija console.log (kļūda)})

Izeja:

Turpinot šo rakstu par solījumiem JavaScript

3. piemērs:

var solījums = jauns solījums (funkcija (atrisināt, noraidīt) {// šeit var rediģēt kļūdas ziņojumu mest jaunu kļūdu ('radās kļūda!')}) solījums. tad (funkcija (Thissuccess) {console.log (Thissuccess)} ) .catch (function (Thiserror) {// kļūdu apstrādātāja funkcija izsauca console.log (Thiserror)})

Izeja:

Pielietojums:
1. Darbība ar asinhroniem notikumiem.
2. Asinhrono http pieprasījumu apstrāde.

Tādējādi mēs esam nonākuši pie šī raksta par solījumiem JavaScript. Ja vēlaties uzzināt vairāk, iepazīstieties ar Autors: uzticams tiešsaistes mācību uzņēmums Edureka. Edureka Java J2EE un SOA apmācības un sertifikācijas kurss ir paredzēts, lai apmācītu jūs gan galvenajiem, gan uzlabotajiem Java jēdzieniem kopā ar dažādiem Java ietvariem, piemēram, Hibernate & Spring.

Vai mums ir jautājums? Lūdzu, pieminējiet to šī emuāra komentāru sadaļā, un mēs sazināsimies ar jums pēc iespējas ātrāk.