# chaining Promises

[JS](../..) ⟩ [async](..) ⟩ [Promise]() ⟩ chaining

{% tabs %}
{% tab title="🔴 主題" %}
* [promise.inseries](chaining/promise.inseries "mention") - get values from **Promise chain** of <mark style="color:yellow;">**arbitrary length**</mark> <mark style="color:orange;">**sequentially**</mark>.
{% endtab %}

{% tab title="💈範例" %}
```javascript
// chaining Promises
fetch(url)                             // `Response` Promise
    .then(response => response.json()) // `JSON` Promise
    .then(json => parseJSON())         // fictional `Profile` Promise
    .then(profile => displayProfile()) // (end of Promise chain)
    .catch(error => handle(error));    // error handling
```
{% endtab %}

{% tab title="👥 相關" %}
* [promises](../await/promises "mention")
{% endtab %}
{% endtabs %}
