ํญํด99๋ฅผ ํ๊ธฐ์ ์ ๋
ธ๋ง๋ ์ฝ๋ java ์
๋ฌธ ๋จ๊ณ์์ ๋ด๊ฐ ์์ฑํ๋ ์ฝ๋๋ฅผ ๋ค๊ณ ์ ๋ดค๋ค.
์ด ์ฝ๋๋ฅผ ์ฐ๋ ๋ ์ด ์ค๋ค๋!
const amIFat = false;
let something;
console.log(something);
ํด๋น ์ฝ๋์ ๊ฐ์ undefined ๊ฐ ์ถ๋ ฅ๋๋ค.
Why?๐amIFat ์ด๋ผ๋ ๋ณ์์ false ๊ฐ์ ์ฃผ๊ณ something์ด๋ผ๋ ๋ณ์๋ ๊ฐ์ ์ ์ ํด์ฃผ์ง ์์๊ธฐ ๋๋ฌธ์ด๋ค.
undefined๋
undefined = variable ์ด ๋ฉ๋ชจ๋ฆฌ์ ๋ง๋ค์ด์ ธ์์ง๋ง ์ปดํจํฐ๊ฐ ์ด variable ์ ๋ํด์ ์ธ์ง ํ์ง๋ง ๊ฐ์ ์์!
์ฆ '๊ฐ์ด ํ ๋น๋์ง ์์ ์ํ' ๋ฅผ ๋ํ๋ผ ๋ ์ฌ์ฉํ๋ค.
null ์ ์์ ์ฝ๋
let age = null;
console.log(age, typeof age);
// null, "object"
null
์ฐ๋ฆฌ๊ฐ variable ์์ ์ด๋ค ๊ฒ์ด ์๋ค๋ ๊ฒ์ ํ์คํ ํ๊ธฐ ์ํด ์ฐ๋๊ฑฐ์ธ๋ฐ!
์ฝ๊ฒ ์ค๋ช
ํ๋ฉด null ๊ฐ์ ๋น์ด์์์ ๋ํ๋ธ๋ค!
๋ค์ ๋งํด, ์๋ฌด๊ฒ๋ ์ฐธ์กฐํ๊ณ ์์ง ์๋ค๋ ์๋ฏธ๊ฐ ๋ด๊ฒจ ์์ผ๋ฉฐ ์ฃผ๋ก ๊ฐ์ฒด๋ฅผ ๋ด์ ๋ณ์๋ฅผ ์ด๊ธฐํํ ๋ ๋ง์ด ์ฌ์ฉํ๋.
null ๋ํ undefined๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ๊ฐ์ด๋ฉฐ ๋ฐ์ดํฐ ํ์
์ด๋ค.
undefined == null์ true์ด๋ค.
undefined ์ null์ ์ฐจ์ด์
1.undefined๋ ๋ณ์๋ฅผ ์ ์ธ๋ง ํ๋๋ผ๋ ํ ๋น๋์ง๋ง null์ ๋ณ์๋ฅผ ์ ์ธํ ํ์ null๋ก ๊ฐ์ ๋ฐ๊พผ๋ค๋ ์ ์
๋๋ค.
2.undefined๋ ๋ฑ๋ก์ด ๋์ด์์ง ์๊ธฐ ๋๋ฌธ์ ์ด๊ธฐํ๋ ์ ์๋์ง๋ ์์ ๊ฒ์
๋๋ค.
undefined ๋ฐํํ๋ ๊ฒฝ์ฐ๋ค!
๊ฐ์ ํ ๋นํ์ง ์์ ๋ณ์
๋ฉ์๋์ ์ ์ธ์์ ๋ณ์๊ฐ ํ ๋น๋ฐ์ง ์์ ๊ฒฝ์ฐ
ํจ์๊ฐ ๊ฐ์ return ํ์ง ์์์ ๋
typeof undefined๋ ์ถ๋ ฅํ๋ฉด undefined์ด๋ค.
typeof null์ ์ถ๋ ฅํ๋ฉด object์ด๋ค. ํ์ง๋ง ์ด๋ ์ฌ์ ํ ์์ ํ์
(primitive value)๋ก, JavaScript์์๋ ๊ตฌํ ๋ฒ๊ทธ๋ก ๊ฐ์ฃผํ๋ค.
<์ถ์ฒ ์ฌ์ดํธ>
https://2ssue.github.io/common_questions_for_Web_Developer/docs/Javascript/13_undefined&null.html#null
https://taenami.tistory.com/33