๊ฐœ๋… ๐Ÿ“–/Javascript ๊ฐœ๋…

ํ”„๋กœ๋ฏธ์Šค(promise)

๋ฒ„๋‘˜ 2023. 4. 12. 11:16

 


promise๋ž€?

์ฒ˜๋ฆฌ์— ์„ฑ๊ณตํ–ˆ์„ ๋•Œ ์‹คํ–‰ํ•  ์ฝœ๋ฐฑ ํ•จ์ˆ˜์™€ ์„ฑ๊ณตํ•˜์ง€ ์•Š์•˜์„ ๋•Œ ์‹คํ–‰ํ•  ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ๋ฏธ๋ฆฌ ์•ฝ์†ํ•˜๋Š” ๊ฒƒ

 

new Promise(resolve,reject)

 

ํ”„๋กœ๋ฏธ์Šค๋ฅผ ์‹คํ–‰ํ•  ๋•Œ๋Š” then(),catch(),finallu() ๋ฉ”์„œ๋“œ๋“ค์„ ์‚ฌ์šฉํ•œ๋‹ค.

- then() : ํ”„๋กœ๋ฏธ์Šค์—์„œ ์„ฑ๊ณตํ–ˆ๋‹ค๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ƒˆ์„ ๋•Œ ์‹คํ–‰ํ•  ํ•จ์ˆ˜,๋ช…๋ น ์—ฐ๊ฒฐ

- catch() : ํ”„๋กœ๋ฏธ์Šค์—์„œ ์‹คํŒจํ–ˆ๋‹ค๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ƒˆ์„ ๋•Œ ์‹คํ–‰ํ•  ํ•จ์ˆ˜,๋ช…๋ น ์—ฐ๊ฒฐ

- finally() :์„ฑ๊ณต์—ฌ๋ถ€์™€ ๊ด€๋ จ ์—†์ด ๋งˆ์ง€๋ง‰์— ์‹คํ–‰ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์‚ฌ์šฉ

 

false์ผ ๊ฒฝ์šฐ๋Š” catch๋ฌธ ์‹คํ–‰

 

 

- ํ”„๋กœ๋ฏธ์Šค์˜ ์ƒํƒœ

์ƒํƒœ ์„ค๋ช…
pending ์ฒ˜์Œ ํ”„๋กœ๋ฏธ์Šค๋ฅผ ๋งŒ๋“ค๋ฉด ๋Œ€๊ธฐ์ƒํƒœ
fulfilled ์ฒ˜๋ฆฌ์— ์„ฑ๊ณตํ•˜๋ฉด ์ดํ–‰ ์ƒํƒœ
rejected ์ฒ˜๋ฆฌ์— ์‹คํŒจํ•˜๋ฉด ๊ฑฐ๋ถ€ ์ƒํƒœ

 

- ํ”„๋กœ๋ฏธ์Šค ์ฒด์ด๋‹

ํ”„๋กœ๋ฏธ์Šค1.then(ํ”„๋กœ๋ฏธ์Šค2).then(ํ”„๋กœ๋ฏธ์Šค3)

'๊ฐœ๋… ๐Ÿ“– > Javascript ๊ฐœ๋…' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

map()  (0) 2023.04.13
fetch API  (0) 2023.04.12