ํธ์ด์คํ 2 JS_๊ธฐ์ (3)_ Hoisting(ํธ์ด์คํ ) ๋ฟ์๊ธฐ JS์ ํธ์ด์คํ ์ ๋ํด์ ์์ธํ ์์๋ณด์๋ค! 1. ํธ์ด์คํ ์ด๋? ( 1 ) ํธ์ด์คํ (Hoisting)์ด๋ ๋ฌด์์ผ๊น JavaScript์์ ํธ์ด์คํ (hoisting)์ด๋, ์ธํฐํ๋ฆฌํฐ๊ฐ ๋ณ์์ ํจ์์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ ์ธ ์ ์ ๋ฏธ๋ฆฌ ํ ๋นํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. - MDN (https://developer.mozilla.org/ko/docs/Glossary/Hoisting) MDN ๋ฌธ์์์๋ ์์ ๊ฐ์ด ๋ฒ์ญ์ ํ์๋ค. ์ฆ, JS์ ์ธํฐํ๋ฆฌํฐ๊ฐ ์ฝ๋๋ฅผ ์ฝ๊ธฐ ์์ํ ๋ ์ ์ธ๋ ๋ณ์, ์์, ํจ์ ๋ฑ์ ๋ชจ๋ ๋ฏธ๋ฆฌ ํ ๋น์ ํ๋ ์์ ์ ์๋ฏธํ๋ค. ๊ธ์ ๋ณธ๊ฒฉ์ ์ธ ์์์ ์์ ๋ชจ๋ ์๋ณ์(๋ณ์, ํจ์, ํด๋์ค ๋ฑ)๋ ํธ์ด์คํ ์ด ๋๋ค! ( 2 ) var์ ํน์ง JS์์ ๋ณ์, ์์๋ฅผ ์ ์ธํ๋ ๋ฐฉ๋ฒ์ 3๊ฐ์ง๊ฐ ์๋ค. 1.var .. 2023. 3. 31. JS_๋ฌธ๋ฒ (3)_ํธ์ด์คํ ํธ์ด์คํ ์ด์ Hoisting = ๋์ด์ฌ๋ฆฐ๋ค ์ผ๋ฐ์ ์ธ ์ธ์ด = ํจ์, ๋ณ์๋ฅผ ์ ์ธ ํ ์ฌ์ฉ์ด ๊ฐ๋ฅ JS = ์ ์ธ ์ ์ ์ฌ์ฉ์ ํด๋ ์๋ฌ๋ฅผ ๋ด์ง ์๋๋ค...! ์์ 1. var ํค์๋ var์ let๊ณผ ๊ฐ์ ๋ณ์๋ฅผ ์ ์ธ์ ์ฐ์ด๋ ํค์๋์ด๋ค. ํ์ง๋ง ๊ฐ์ ์ด๋ฆ์ ๋ณ์๋ฅผ ์ฌ์ ์ธํด๋ ์ค๋ฅ๊ฐ ๋์ง ์๋๋ค. var a = 1; var a = 2; console.log(a) >>> 2 ====================== let a = 1; let a = 2; console.log(a) >>> SyntaxError: Identifier 'a' has already been declared ํธ์ด์คํ ์ด ์ผ์ด๋๋ ์์ console.log(a) a = 10; console.log(a) var a = 1 console... 2022. 2. 16. ์ด์ 1 ๋ค์ ๋ฐ์ํ