๐ฃ var · let · const ์ ๋ํด์ ์ดํด๋ณด์!
Javascript ๋ณ์๋ฅผ ์ ์ธํ ๋ ์ฌ์ฉํ๋ var let const ! ์๋ฐ์คํฌ๋ฆฝํธ ๊ธฐ์ด ๊ฐ๋
์ค์ ๋นผ ๋์ ์ ์๋ ๊ฒ์ ๋ํด์ ๋ค๋ค๋ณด๊ธฐ๋ก ํ์!
var ์ด์ ๋ varvar
๐ฃ var
1. ๊ฐ๋
๋ฐ ํน์ง
ํจ์ ์ค์ฝํ๋ฅผ ๊ฐ๊ณ ์์ผ๋ฉฐ ๋ณ์๋ฅผ ์ค๋ณต ์ ์ธํด๋ ์๋ฌ๊ฐ ๋ฐ์ํ์ง ์๋๋ค.
ํจ์ ์ค์ฝํ / ์ ์ญ ์ค์ฝํ
var์ ๊ฒฝ์ฐ let, const์ ๋ฌ๋ฆฌ ๋ธ๋ก ์ค์ฝํ๊ฐ ์กด์ฌํ์ง ์์. ํจ์ ์ค์ฝํ์ด๊ฑฐ๋ ์ ์ญ ์ค์ฝํ! ๋ฐ๋ผ์ ํจ์๊ฐ ์๋ ๋ธ๋ก ์์์ var ๋ณ์๋ฅผ ์ ์ํ๋ฉด ํด๋น ๋ธ๋ก ๋ฐ์์๋ ์ด ๋ณ์์ ์ ๊ทผํ ์ ์๋ค.
var๋ ์ค๋ณต์ ์ธ
var๋ ์ค๋ณต์ ์ธ์ด ๊ฐ๋ฅํ์ง๋ง ๋๋ฒ์งธ ์ ์ธ์ ๋ฌด์๋๋ฉฐ, ์๋ฌ๋ ๋ฐ์ํ์ง ์์.
2. ์ฝ๋
function varExample() {
var ๋ณ์ = 1;
if (true) {
var ๋ณ์ = 2; // ๊ฐ์ ๋ณ์
console.log(๋ณ์); // 2
}
console.log(๋ณ์); // 2
}
varExample();
var ๋ณ์2 = 10;
var ๋ณ์2 = 20; // ์ค๋ฅ ์์
console.log(๋ณ์2); // 20
๐ฃ let
1. ๊ฐ๋
๋ธ๋ก ์ค์ฝํ
let๊ณผ const๋ ๋ธ๋ก ์ค์ฝํ๋ฅผ ๊ฐ๋๋ค.
์ค๋ณต์ ์ธ X
let๊ณผ const๋ ์ค๋ณต์ ์ธ์ด ๋ถ๊ฐ๋ฅํ๊ณ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค.
์ฌ์ ์ธX, ์ฌํ ๋น O
let๊ณผ const๋ ๋ชจ๋ ์ฌ์ ์ธ์ด ๋ถ๊ฐ๋ฅํ๋ค. ์ฆ ๊ฐ์ ์ค์ฝํ ๋ด์์ ๊ฐ์ ๋ณ์ ์ด๋ฆ์ผ๋ก ๋ณ์๋ฅผ ๋ค์ ์ ์ธํ๋ ๊ฒ์ด ํ์ฉ๋์ง ์๋๋ค.
let์ ๊ฒฝ์ฐ ์ฌํ ๋น์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ํ๋ฒ ์ ์ธํ ๋ณ์์ ๋ค๋ฅธ ๊ฐ์ ํ ๋นํ ์ ์๋ค.
๋ง์ฝ ์ ์ธ๊ณผ ํ ๋น์ ๋ํ ๊ฐ๋
์ด ๋ถ์กฑํ๋ค๋ฉด, ๊ฒ์๋ฌผ ์ฐธ๊ณ !
[JavaScript] ๋ณ์์ ์ ์ธ, ์ด๊ธฐํ, ํ ๋น
๐ฃ 0. ๋ณ์์ ์ ์ธ, ์ด๊ธฐํ ํ ๋น?ใ
?์ค๋์ ๋ณ์์ ์ ์ธ, ์ด๊ธฐํ, ํ ๋น์ ๋ํด์ ์ดํด๋ณด๋๋ก ํ๊ฒ ๋ค! ๋ฉด์ ์ง๋ฌธ์ผ๋ก ๋์ค๋ ๊ฐ๋
์ค ํ๋! ์๋์์ ์ฒ์ฒํ ํ๋์ฉ ์ดํด๋ณด์! ๐ฃ 1. ๋ณ์ ์ ์ธ๐ค
haileyham.tistory.com
2. ์ฝ๋
function letExample() {
let x = 1;
if (true) {
let x = 2; // ๋ค๋ฅธ ๋ณ์
console.log(x); // 2
}
console.log(x); // 1
}
letExample();
let y = 10;
// let y = 20; // ์ค๋ฅ: 'y'๋ผ๋ ์๋ณ์๊ฐ ์ด๋ฏธ ์ ์ธ๋จ
y = 20; // ์ฌํ ๋น์ ํ์ฉ
console.log(y); // 20
๐ฃ const
1. ๊ฐ๋
๋ธ๋ก ์ค์ฝํ
let๊ณผ const๋ ๋ธ๋ก ์ค์ฝํ๋ฅผ ๊ฐ๋๋ค.
์ค๋ณต์ ์ธ X
let๊ณผ const๋ ์ค๋ณต์ ์ธ์ด ๋ถ๊ฐ๋ฅํ๊ณ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค.
์ฌ์ ์ธX, ์ฌํ ๋น X
let๊ณผ const๋ ๋ชจ๋ ์ฌ์ ์ธ์ด ๋ถ๊ฐ๋ฅํ๋ค. ์ฆ ๊ฐ์ ์ค์ฝํ ๋ด์์ ๊ฐ์ ๋ณ์ ์ด๋ฆ์ผ๋ก ๋ณ์๋ฅผ ๋ค์ ์ ์ธํ๋ ๊ฒ์ด ํ์ฉ๋์ง ์๋๋ค.
const์ ๊ฒฝ์ฐ ์์๋ก์ ํ ๋ฒ ๊ฐ์ด ํ ๋น๋๋ฉด ์ฌํ ๋น์ด ๋ถ๊ฐ๋ฅํ๋ค.
2. ์ฝ๋
function constExample() {
const x = 1;
if (true) {
const x = 2; // ๋ค๋ฅธ ๋ณ์
console.log(x); // 2
}
console.log(x); // 1
}
constExample();
const y = 10;
// const y = 20; // ์ค๋ฅ: 'y'๋ผ๋ ์๋ณ์๊ฐ ์ด๋ฏธ ์ ์ธ๋จ
// y = 20; // ์ค๋ฅ: ์์ ๋ณ์์ ๊ฐ์ ํ ๋นํ ์ ์์
console.log(y); // 10
๐ฃ var · let · const ์์ฝ!
var ํจ์ ์ค์ฝํ ๋ฅผ ๊ฐ๊ณ ์์ผ๋ฉฐ ๋ณ์๋ฅผ ์ค๋ณต ์ ์ธ ํด๋ ์๋ฌ๊ฐ ๋ฐ์X let ๋ธ๋ก ์ค์ฝํ ๋ฅผ ๊ฐ๊ณ ์์ผ๋ฉฐ ์ค๋ณต ์ ์ธ์ ํ์ฉ๋์ง ์๊ณ , ๋ณ์์ ๊ฐ์ ๋ณ๊ฒฝ O (์ฌ์ ์ธX, ์ฌํ ๋นO) const ๋ธ๋ก ์ค์ฝํ ๋ฅผ ๊ฐ๊ณ ์์ผ๋ฉฐ ์์๋ก, ํ ๋ฒ ์ ์ธํ๊ณ ๋๋ฉด ์ฌํ ๋น์ด ๋ถ๊ฐ๋ฅํ๋ฉฐ ๊ฐ์ ๋ณ๊ฒฝ X (์ฌ์ ์ธX, ์ฌํ ๋นX)
์ค๋๋ ๋พฐ๋ก๋กฑ! var์ ์ด์ varvar!