# async/await और Fetch API — जावास्क्रिप्ट

Source: https://www.geekswithgeeks.com/hi/javascript/js-async-await-fetch

> सिंक्रोनस कोड जैसा दिखने वाला असिंक्रोनस कोड लिखना, और असली request भेजना।

## async/await की मूल बातें

`await` फ़ंक्शन को तब तक रोकता है जब तक प्रॉमिस settle न हो जाए, बिना बाकी ऐप को रोके।

```js
async function getData() {
  const result = await fetchData();
  console.log(result);
}
```

## प्रॉमिस पर शुगर

`async/await` प्रॉमिस के ऊपर एक सिंटैक्स शुगर है — यह असिंक्रोनस कोड को सिंक्रोनस कोड की तरह ऊपर से नीचे पढ़ने देता है।

## डेटा fetch करना

`fetch()` एक प्रॉमिस लौटाता है जो response में resolve होता है; body पार्स करने के लिए `.json()` बुलाएँ।

```js
async function getUser() {
  try {
    const response = await fetch("https://api.example.com/user/1");
    const data = await response.json();
    console.log(data);
  } catch (err) {
    console.log("Fetch failed:", err.message);
  }
}
```

## हमेशा त्रुटियाँ संभालें

`await` को `try/catch` में रखें — `async` फ़ंक्शन के अंदर rejected प्रॉमिस throw करता है, और बिना संभाला rejection Node प्रोसेस को क्रैश कर सकता है।
