---
title: "Explain the difference between the \"pending,\" \"fulfilled,\" and \"rejected\" states of a Promise."  
description: "Explain the difference between the \"pending,\" \"fulfilled,\" and \"rejected\" states of a Promise."  
author: "Sandra Emily"  
published: 2023-09-26  
updated: 2023-09-26  
canonical: https://www.mindstick.com/forum/159912/explain-the-difference-between-the-pending-fulfilled-and-rejected-states-of-a-promise  
category: "javascript"  
tags: ["javascript", "promise"]  
reading_time: 2 minutes  

---

# Explain the difference between the "pending," "fulfilled," and "rejected" states of a Promise.

[Explain the difference](https://www.mindstick.com/forum/156125/can-you-explain-the-difference-between-organic-and-paid-results) between the "[pending](https://answers.mindstick.com/qa/33513/what-is-a-pending-intent)," "fulfilled," and "rejected" [states](https://yourviews.mindstick.com/story/1549/top-indian-states-with-muslim-population) of a Promise.

## Replies

### Reply by Aryan Kumar

The three states of a Promise in JavaScript—pending, fulfilled, and rejected—represent different stages in the lifecycle of the asynchronous operation the Promise represents. Here's an explanation of each state:

**Pending**:

- This is the initial state of a Promise when it is created.
- In the pending state, the asynchronous operation associated with the Promise has not yet completed.
- Promises start in the pending state and can transition to either the fulfilled or rejected state.

**Fulfilled**:

- The Promise transitions to the fulfilled state when the asynchronous operation successfully completes.
- When a Promise is fulfilled, it means that the operation it represents has finished successfully, and it may carry a resolved value (e.g., the result of a successful API request).
- You can access the resolved value using the **.then()** method.

**Rejected**:

- The Promise transitions to the rejected state when the asynchronous operation encounters an error or fails.
- In the rejected state, the Promise contains information about the reason for the failure, typically an error message or an error object.
- You can handle errors and access the rejection reason using the **.catch()** method.

Here's a visual representation of how a Promise can transition between these states:

```plaintext
Initial State:   [Pending]
                   |
                   V
Successful:     [Fulfilled]
                   |
                   V
Error/Failure:  [Rejected]
```

In summary, the pending state represents the ongoing asynchronous operation, fulfilled represents a successful completion with a result value, and rejected represents an error or failure with an associated reason. Promises provide a structured way to work with asynchronous code and handle different outcomes, making it easier to manage asynchronous flows and error handling in JavaScript.


---

Original Source: https://www.mindstick.com/forum/159912/explain-the-difference-between-the-pending-fulfilled-and-rejected-states-of-a-promise

Copyright © MindStick Software Pvt. Ltd. This Markdown version is provided for developers, AI systems, and offline reading.
