# ์๋ฐ์คํฌ๋ฆฝํธ ๋ณ์ ์ ์ธ ๋ฐฉ์๋ณ ํจ์ ์ค์ฝํ(function scope) ์ฐจ์ด์ !
์๋ฐ์คํฌ๋ฆฝํธ์ ๋ณ์๋ ์ ์ธ ๋ฐฉ์์ ๋ฐ๋ผ ์ค์ฝํ(์ ํจ ๋ฒ์)๊ฐ ๋ฌ๋ผ์ง๋๋ค. var : ํจ์ ์ค์ฝํ(function scope)let, const : ๋ธ๋ก ์ค์ฝํ(block scope)์ฌ๊ธฐ์ "์ค์ฝํ"๋ ๊ทธ ๋ณ์๋ฅผ ์ฌ์ฉํ ์ ์๋ ์ฝ๋์ ๋ฒ์๋ฅผ ๋งํฉ๋๋ค. ํจ์ ์ค์ฝํ๋?var๋ก ์ ์ธ๋ ๋ณ์๋ ํจ์ ์ ์ฒด์์ ์ ํจํฉ๋๋ค.์ฆ, if, for, { } ๊ฐ์ ๋ธ๋ก({}) ๋ด๋ถ์ ์ ์ธํด๋ ๋ธ๋ก ๋ฐ์์ ์ ๊ทผ ๊ฐ๋ฅํฉ๋๋ค. ๋ธ๋ก ์ค์ฝํ๋?let์ด๋ const๋ ํด๋น ๋ธ๋ก({}) ์์์๋ง ์ ํจํฉ๋๋ค. ECMAScript 2015(ES6)์์ ์ถ๊ฐ๋ ๊ธฐ๋ฅ์
๋๋ค.์์ (1) var๋ ํจ์ ์ค์ฝํif (true) { var x = 5;}console.log(x); // 5 var x๋ if๋ฌธ ๋ธ๋ก {} ์์์ ์ ์ธ๋์ง๋ง,์๋ฐ์ค..