Retrieving Data from Promise: then() & catch()

Hello Dear Readers & Fellow Developers!

In the previous post, I have shown the way to create a Promise which is a very important concept to know.
[ https://dev.to/swarnaliroy94/javascript-concept-of-promise-3ijb ]

The pending state starts immedia…


This content originally appeared on DEV Community and was authored by Swarnali Roy

Hello Dear Readers & Fellow Developers!

In the previous post, I have shown the way to create a Promise which is a very important concept to know.
[ https://dev.to/swarnaliroy94/javascript-concept-of-promise-3ijb ]

The pending state starts immediately after generating a Promise and holds until it is either resolved or rejected.
Having said that, while working with React.JS or React Native, we can set the initial state as pending state, set resolve in the then section and set reject in catch section.

Here comes a question, what is this then & catch section?

In JavaScript, we often struggle to deal with asynchronous operations . There comes the concept of Promise, with which we can deal with those operations. To understand how to retrieve data from a Promise, the then & catch concept is very important.

A completely off topic is, I struggled a lot to understand how a Promise actually works. It has been 8 months now and from the experience that I gathered , I will try to make this post as simple as I can.

Let's get started with understanding How to Retrieve Data from Promise.

First of all, let's create a promise for example.

const addition = (a, b) =>
  new Promise((resolve, reject) => {
    if (typeof a == "number" && typeof b == "number") {
      resolve(a + b);
    } else {
        reject ("Not a Number")
    }
  });

The example shows a function called addition, which is a Promise that takes two parameters, a & b. The if code block holds a condition that checks if both a & b are numbers with the typeof operator.
[ https://dev.to/swarnaliroy94/javascript-data-types-and-debugging-type-errors-with-typeof-3mao ].

Resolve

When we execute the Promise that we created in the above example, if it is resolved, the then block is executed and we can get the result from the callback function . In this example, this Promise will be resolved and return the summation of a & b, if and only if both a & b are numbers. The example is given below.

addition(10, 5)
  .then((response) => {
    console.log(response);
  })
  .catch((err) => {
    console.log(err);
  });

The output of this example will show the summation 15 as both 10 & 5 are numbers.

Reject

The Promise will be rejected if any of the values of a or b is not a number & will be captured in the catch block.

addition(10, "5") 
  .then((response) => {
    console.log(response);
  })
  .catch((err) => {
    console.log(err);
  });

The output of this example shows the message "Not a Number", as 10 is a number but "5" is a string, which doesn't fulfill the condition of the Promise.

Basically, then is capturing the success state & catch is capturing the error/failure state.

There are other ways of executing the same concept. We can use Async/Await to make it more compact. I will write about it in the next post. I hope, I was able to make it simple and understandable. But if there is any confusion, questions are always welcomed in the discussion section.


This content originally appeared on DEV Community and was authored by Swarnali Roy


Print Share Comment Cite Upload Translate Updates
APA

Swarnali Roy | Sciencx (2021-08-02T20:16:53+00:00) Retrieving Data from Promise: then() & catch(). Retrieved from https://www.scien.cx/2021/08/02/retrieving-data-from-promise-then-catch/

MLA
" » Retrieving Data from Promise: then() & catch()." Swarnali Roy | Sciencx - Monday August 2, 2021, https://www.scien.cx/2021/08/02/retrieving-data-from-promise-then-catch/
HARVARD
Swarnali Roy | Sciencx Monday August 2, 2021 » Retrieving Data from Promise: then() & catch()., viewed ,<https://www.scien.cx/2021/08/02/retrieving-data-from-promise-then-catch/>
VANCOUVER
Swarnali Roy | Sciencx - » Retrieving Data from Promise: then() & catch(). [Internet]. [Accessed ]. Available from: https://www.scien.cx/2021/08/02/retrieving-data-from-promise-then-catch/
CHICAGO
" » Retrieving Data from Promise: then() & catch()." Swarnali Roy | Sciencx - Accessed . https://www.scien.cx/2021/08/02/retrieving-data-from-promise-then-catch/
IEEE
" » Retrieving Data from Promise: then() & catch()." Swarnali Roy | Sciencx [Online]. Available: https://www.scien.cx/2021/08/02/retrieving-data-from-promise-then-catch/. [Accessed: ]
rf:citation
» Retrieving Data from Promise: then() & catch() | Swarnali Roy | Sciencx | https://www.scien.cx/2021/08/02/retrieving-data-from-promise-then-catch/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.