๋ชจ๋ ๊ธฐ์ ์ ์ด๋ ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ํ์ํ๋ค๊ณ ์๊ฐํ๋ค.
Set๊ณผ Map๋ ์ด์ ๊ฐ์ ๋งฅ๋ฝ์ผ๋ก ํ์ค ์ธ๊ณ๋ฅผ ๋ฐ์ํ๊ธฐ์ ๊ฐ์ฒด์ ๋ฐฐ์ด ๋ ์๋ฃ๊ตฌ์กฐ ๋ง์ผ๋ก ๋ถ์กฑํด์ ๋งต๊ณผ ์ ์ด ๋ฑ์ฅํ๊ฒ ๋๋ค.
Set ๊ฐ์ฒด๋ ์ค๋ณต๋์ง ์๋ ์ ์ผํ ๊ฐ๋ค์ ์งํฉ์ด๋ค. Set ๊ฐ์ฒด๋ ๋ฐฐ์ด๊ณผ ์ ์ฌํ์ง๋ง ๋ค์๊ณผ ๊ฐ์ ์ฐจ์ด๊ฐ ์๋ค.
๊ตฌ๋ถ | ๋ฐฐ์ด | Set ๊ฐ์ฒด |
---|---|---|
๋์ผํ ๊ฐ์ ์ค๋ณตํ์ฌ ํฌํจํ ์ ์๋ค. | O | X |
์์ ์์์ ์๋ฏธ๊ฐ ์๋ค. | O | X |
์ธ๋ฑ์ค๋ก ์์์ ์ ๊ทผํ ์ ์๋ค. | O | X |
์ด๋ฌํ Set ๊ฐ์ฒด์ ํน์ฑ์ ์ํ์ ์งํฉ์ ํน์ฑ๊ณผ ์ผ์นํ๋ค. Set์ ์ํ์ ์งํฉ์ ๊ตฌํํ๊ธฐ ์ํ ์๋ฃ๊ตฌ์กฐ๋ค. ๋ฐ๋ผ์ Set์ ํตํด ๊ต์งํฉ, ํฉ์งํฉ, ์ฐจ์งํฉ, ์ฌ์งํฉ ๋ฑ์ ๊ตฌํํ ์ ์๋ค.
const set1 = new Set([1, 2, 3, 3]);
console.log(set1); // Set(3) {1, 2, 3}
const set2 = new Set('hello');
console.log(set2); // Set(4) {"h", e", "l", "o"}
Map ๊ฐ์ฒด๋ ํค์ ๊ฐ์ ์์ผ๋ก ์ด๋ฃจ์ด์ง ์ปฌ๋ ์ ์ด๋ค. Map ๊ฐ์ฒด๋ ๊ฐ์ฒด์ ์ ์ฌํ์ง๋ง ๋ค์๊ณผ ๊ฐ์ ์ฐจ์ด๊ฐ ์๋ค.
๊ตฌ๋ถ | ๊ฐ์ฒด | Map ๊ฐ์ฒด |
---|---|---|
ํค๋ก ์ฌ์ฉํ ์ ์๋ ๊ฐ | ๋ฌธ์์ด ๋๋ ์ฌ๋ฒ ๊ฐ | ๊ฐ์ฒด๋ฅผ ํฌํจํ ๋ชจ๋ ๊ฐ |
์ดํฐ๋ฌ๋ธ | X | O |
์์ ๊ฐ์ ํ์ธ | Object.keys(obj).length | map.size |
const map1 = new Map([['key1', 'value1'], ['key2', 'value2']]);
console.log(map1); // Map(2) {"key1" => "value1", "key2" => "value2"}
https://www.youtube.com/watch?v=eFkAjX0Gz8Y