Promise.race(), Promise.allSettled(), Iterable
Post

Promise.race(), Promise.allSettled(), Iterable

들어가기

1
- 익숙하지 않았던 Promise 메서드 둘과 Iterable

Promise.race()

1
2
- parameter로 iterable이 들어감
- iterable 안에 있는 Promise 중에 가장 먼저 완료된 것을 실행 혹은 거부 함.

Promise.allSettled()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
- parameter로 iterabled이 들어감
- iterable 안에 있는 모든 Pormise가 실행 혹은 거부된 후 결과값 객체를 반영

```
const promise1 = Promise.resolve(3);
const promise2 = new Promise((resolve, reject) => setTimeout(reject, 100, 'foo'));
const promises = [promise1, promise2];

Promise.allSettled(promises).
then((results) => results.forEach((result) => console.log(result.status)));

// expected output:
// "fulfilled"
// "rejected"

```

Iterable

1
2
3
4
- 반복 가능한 객체 (Iterable Object)
- es2015에서 도입 
- 생성자 중 iterable 객체를 만들어내는 생성자는 다음과 같음.
    - `String`, `Array`, `TypedArray`, `Map`, `Set`

Reference