#1 Language ๐Ÿ‘„/1-2 Javascript

[Javascript] ECMAScript 6 (ES6)_2

FillByCoding 2022. 11. 18. 09:40

1. ์Šคํ”„๋ ˆ๋“œ ๋ฌธ๋ฒ•
    - ...ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ
    - ์Šคํ”„๋ ˆ๋“œ ๋ฌธ๋ฒ•์€ ํ•˜๋‚˜๋กœ ๋ญ‰์ณ์žˆ๋Š” ์—ฌ๋Ÿฌ ๊ฐ’๋“ค์˜ ์ง‘ํ•ฉ์„ ํŽผ์ณ ๊ฐœ๋ณ„์ ์ธ ๊ฐ’๋“ค์˜ ๋ชฉ๋ก์œผ๋กœ ๋งŒ๋“ฆ
    - Rest ํŒŒ๋ผ๋ฏธํ„ฐ์™€๋Š” ๋ฐ˜๋Œ€ ๊ฐœ๋…
    - Rest ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ „๋‹ฌ๋œ ๊ฐ’๋“ค์„ ๋ฐฐ์—ด๋กœ ๋ฌถ์–ด์ฃผ๋Š” ๊ฒƒ
    - ์Šคํ”„๋ ˆ๋“œ ๋ฌธ๋ฒ•์€ ๋ถ„๋ฆฌ๋ฅผ ํ•ด์„œ ์š”์†Œ ํ•˜๋‚˜์”ฉ ์ฐ์–ด์ฃผ๋Š” ๊ฒƒ

2. Destructuring ํ• ๋‹น(๋น„๊ตฌ์กฐํ™” ํ• ๋‹น)
    - ๋ฐฐ์—ด๊ฐ™์€ ์ง‘ํ•ฉ ๋˜๋Š” ๊ฐ์ฒด์˜ ๊ตฌ์กฐ๋ฅผ ํŒŒ๊ดดํ•˜์—ฌ 1๊ฐœ ์ด์ƒ์˜ ๋ณ€์ˆ˜์— ๊ฐœ๋ณ„์ ์œผ๋กœ ํ• ๋‹นํ•˜๋Š” ๊ฒƒ

3. set
    - set์€ ์ค‘๋ณต๋˜์ง€ ์•Š๋Š” ์œ ์ผํ•œ ๊ฐ’๋“ค์˜ ์ง‘ํ•ฉ
    - ๋ฐฐ์—ด๊ณผ ์œ ์‚ฌํ•˜์ง€๋งŒ ์ˆœ์„œ์˜ ์˜๋ฏธ๊ฐ€ ์—†๊ณ  ์ค‘๋ณต ๊ฐ’์ด ํ—ˆ์šฉ๋˜์ง€ ์•Š์Œ, ์ธ๋ฑ์Šค๋กœ ์š”์†Œ์— ์ ‘๊ทผ ๋ถˆ๊ฐ€๋Šฅ
    - set์˜ ์„ ์–ธ: new Set();

4. Map
    - Map์€ Key์™€ value๋ฅผ ๊ฐ€์ง€๋Š” ์ปฌ๋ ‰์…˜
    - ๊ฐ์ฒด์™€ ์ฐจ์ด์ 
        ๊ฐ์ฒด์˜ ํ‚ค๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ’: ๋ฌธ์ž์—ด๊ณผ ์‹ฌ๋ฒŒ
        Map์˜ ํ‚ค๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ’: ๊ฐ์ฒด๋ฅผ ํฌํ•จํ•œ ๋ชจ๋“  ๊ฐ’
        ๊ฐ์ฒด์˜ ์š”์†Œ ๊ฐœ์ˆ˜ ํ™•์ธ: length
        Map์˜ ์š”์†Œ ๊ฐœ์ˆ˜ ํ™•์ธ: size
    - Map ์ƒ์„ฑ: new Map();

5. Promise
    - ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ๋Š” ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ํ•˜๋‚˜์˜ ํŒจํ„ด์œผ๋กœ ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉ
    - ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด ์ฝœ๋ฐฑ ํ•จ์ˆ˜์•ˆ์— ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒ
    - ์ฝœ๋ฐฑ ํ•จ์ˆ˜ ์•ˆ์— ์ฝœ๋ฐฑ ํ•จ์ˆ˜๋ฅผ ๊ณ„์†ํ•˜์—ฌ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ์ด ์ฝœ๋ฐฑ ์ง€์˜ฅ
    - ์ฝœ๋ฐฑ ์ง€์˜ฅ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ๋ฌธ๋ฒ•์ด Promise

6. async / await
    - async / await๋Š” Promise ๊ธฐ๋ฐ˜์œผ๋กœ ์›€์ง์ž„
    - async / await๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ์ธ Promise๋ฅผ ๋™๊ธฐ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
    - function์•ž์— async๋ฅผ ๋ถ™์—ฌ์ฃผ๊ณ  Promise ๊ตฌ๋ฌธ์— await๋ฅผ ๋ถ™์—ฌ์คŒ
    - Promise๊ฐ€ ๋๋‚  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ๊ฒฐ๊ณผ ๊ฐ’์„ ๋ณ€์ˆ˜์— ์ €์žฅ 

7. Generator
    - ์ฝ”๋“œ ๋ธ”๋ก์œผ ์ผ์‹œ ์ค‘์ง€ํ–ˆ๋‹ค๊ฐ€ ํ•„์š”ํ•œ ์‹œ์ ์— ๋‹ค์‹œ ์žฌ๊ฐœํ•  ์ˆ˜ ์žˆ๋Š” ํŠน์ˆ˜ํ•œ ํ•จ์ˆ˜
    - generator ์„ ์–ธ: function*
    - ๋ฐ˜๋“œ์‹œ ํ•˜๋‚˜ ์ด์ƒ์˜ yield ๊ตฌ๋ฌธ์„ ๊ฐ€์ ธ์•ผ ํ•จ
    - ํ™”์‚ดํ‘œ ํ•จ์ˆ˜๋กœ๋Š” ์ •์˜ ๋ถˆ๊ฐ€๋Šฅ
    - ๊ฐ์ฒด๋กœ ์ƒ์„ฑํ•˜์—ฌ ์‚ฌ์šฉ
    - next()๋ผ๋Š” ๋ฉ”์†Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์Œ yield๋ฅผ ๋งŒ๋‚  ๋•Œ๊นŒ์ง€ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰
    - ๋งˆ์ง€๋ง‰ yield๊ฐ€ ์‚ฌ์šฉ๋˜๊ณ  yield๊ฐ€ ๋”์ด์ƒ ์—†์„๋•Œ๋Š” return;

LIST