์๋ฐ์คํฌ๋ฆฝํธ์์ '๋น'๊ฐ์ ์๋ฏธํ๋ ๋น์ทํ ์์ ๊ฐ์ด ์กด์ฌํ๋๋ฐ ๋ฐ๋ก null๊ณผ undefined ์ด๋ค.
1. undefined
ES6๊ธฐ์ค 7๊ฐ์ ๋ฐ์ดํฐ ํ์ ์ค ํ๋์ธ undefined๋ var ํค์๋๋ฅผ ํตํด ์ ์ธ์ ํ๋ฉด ์ ์ธ๊ณผ ๋์์ ์๋ฐ์คํฌ๋ฆฝํธ ์์ง์ ์ํด undefined๋ก ์ด๊ธฐํ ๋๊ธฐ ๋๋ฌธ์, ํ ๋น๋ฌธ ์ด์ ์ ๋ณ์๋ฅผ ์ฐธ์กฐํ๋ ค๊ณ ํ๋ฉด undefined๊ฐ ๋ฐํ๋๋ค. ( let ํค์๋์ const ํค์๋๋ undefined๋ก ์ด๊ธฐํ๋์ง ์์. )
var user;
console.log(user); // undefined
undefined์ ๊ฐ์ undefined๊ฐ ์ ์ผํ๋ฉฐ ๊ฐ๋ฐ์๊ฐ ์๋์ ์ผ๋ก ์ค ๋น ๊ฐ์ด ์๋๋ผ, ์๋ฐ์คํฌ๋ฆฝํธ ์์ง์ ์ํด undefined๋ก ์ด๊ธฐํ๋ ๊ฐ์ด๋ค. console๋ก ์ฐ์์ ๋ undefined๊ฐ ๋ฐํ๋๋ค๋ฉด, ๋ณ์๊ฐ ์ ์ธ๋ ์ดํ ํ ๋น๋ ์ ์๋ค๋ ๊ฒ์ ์ ์ ์๋ค.
2. null
null ๋ํ undefined์ ๋ง์ฐฌ๊ฐ์ง๋ก ES6๊ธฐ์ค 7๊ฐ์ ๋ฐ์ดํฐ ํ์ ์ค ํ๋์ด๋ฉฐ, nullํ์ ์ ๊ฐ์ null ์ด ์ ์ผํ๋ค.
์๋ฐ์คํฌ๋ฆฝํธ๋ ๋. ์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ๊ธฐ ๋๋ฌธ์ null, Null, NULL์ ์๋ก ๋ค๋ฅด๋ค.
null์ ๋ณ์์ ๊ฐ์ด ์๋ค๋ ๊ฒ์ ๋ช ์์ ์ผ๋ก ๋ํ๋ด ์ค ๋ ์ฌ์ฉํ๋ฉฐ ๊ฐ์ด ํ ๋น๋ ๋ณ์์ null์ ํ ๋นํ๊ฒ ๋๋ฉด ์ด์ ์ ์ฐธ์กฐํ๋ ๊ฐ์ ์ฐธ์กฐํ์ง ์๊ฒ ๋ค๋ ์๋ฏธ๊ฐ ๋๋ค.
var age = 24;
age = null;
=> ํ๋ง๋๋ก ์ ๋ฆฌํ๋ฉด ๊ฐ๋ฐ์๊ฐ ์๋์ ์ผ๋ก ๊ฐ์ด ์์์ ๋ช ์ํ๊ณ ์ถ์ ๋๋ null์ ์ฌ์ฉํ๊ณ , ๋ณ์๋ฅผ ์ฐธ์กฐํ์ ๋ undefined๊ฐ ๋ฐํ๋์๋ค๋ฉด ํด๋น ๋ณ์๋ ์ ์ธ ์ดํ์ ๊ฐ์ด ํ ๋น๋ ์ ์ด ์๋ ๋ณ์์ด๋ค.
์ฐธ๊ณ ์๋ฃ )
์๋ฐ์คํฌ๋ฆฝํธ DEEP DIVE - ์ด์ ๋ชจ / ์ํค๋ถ์ค
'JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ JavaScript ] async await ๋ฌธ๋ฒ (0) | 2022.12.04 |
---|---|
[ JavaScript / Promise ] ์๋ฐ์คํฌ๋ฆฝํธ์ Promise์ ๋ํ์ฌ (0) | 2022.10.20 |
[ JavaScript ] var, let, const ํํค์น๊ธฐ. (0) | 2022.07.04 |
[ JavaScript / Error ] ์๋ฐ์คํฌ๋ฆฝํธ์ Error ๊ฐ์ฒด (0) | 2022.06.22 |
[ Javascript ] ์์ ๊ฐ๊ณผ ๊ฐ์ฒด์ ์ฐจ์ด์ ๋ํด ์์๋ณด๊ธฐ. (0) | 2022.05.12 |