Javascript๋ ๋ณ์๋ฅผ ์ ์ธํ ๋ ์ ์ผ ์์ ๋ณ์ ์ ์ธ ํค์๋๋ฅผ ์ฌ์ฉํ๋ค.
var number = 1;
let number = 1;
const number = 1;
var
- var ํค์๋๋ก ์ ์ธํ ๋ณ์๋ ์ค๋ณต ์ ์ธ์ด ๊ฐ๋ฅ (์ฒ์ ์ ์ธํ ๋ณ์์ ๊ฐ์ด ๋ณ๊ฒฝ๋จ)
var x = 1;
console.log(x); //1
var x = 2;
console.log(x); //2
- var ํค๋์๋ก ์ ์ธํ ๋ณ์๋ ํจ์์ ์ฝ๋ ๋ธ๋ก๋ง์ ์ง์ญ ์ค์ฝํ๋ก ์ธ์ => ๋ชจ๋ ์ ์ญ ๋ณ์๊ฐ ๋จ
var x = 1;
if(true) {
var x = 2;
}
console.log(x); //2
- ๋ฐํ์ ์ด์ ์ ๋ณ์ ์ ์ธ, ์ด๊ธฐํ ๋๋ค ์คํ
console.log(x); //undefined
var x;
console.log(x); //undefined
var = 1;
console.log(x); //1
- ์๋์น์๊ฒ ์ค๋ณต ์ ์ธํ ๊ฒฝ์ฐ ๊ฐ์ด ์ฌํ ๋น๋๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ ์ง์ํจ
let
- var ํค์๋์ ๋จ์ ์ ๋ณด์ํ๊ธฐ ์ํด ๋์
- ์ค๋ณต ์ ์ธ ์๋จ / ์ฌํ ๋น์ ๊ฐ๋ฅ
let x = 1;
let x = 2; //์๋ฌ๋ฐ์ SyntaxError : Identifier 'x' has already been declared
- ๋ธ๋ก ๋ ๋ฒจ ์ค์ฝํ (๋ชจ๋ ์ฝ๋ ๋ธ๋ก์ ์ง์ญ ์ค์ฝํ๋ก ์ธ์ )
let x = 1;
if(true) {
let x = 2;
}
console.log(x); //1
- ๋ฐํ์ ์ด์ ์ ๋ณ์ ์ ์ธ ์คํ -> ๋ฐํ์์์ ๋ณ์ ์ ์ธ๋ฌธ ๋๋ฌ์ ๋ณ์ ์ด๊ธฐํ ์คํ
console.log(x); //์๋ฌ๋ฐ์ ReferenceError : x is not defined
let x;
console.log(x); //undefined
let = 1;
console.log(x); //1
const
- ์ค๋ณต ์ ์ธ ์๋จ / ์ฌํ ๋น ์๋จ (์์)
- const ํค์๋๋ก ์ ์ธํ ๋ณ์๋ ๋ฐ๋์ ์ ์ธ๊ณผ ์ด๊ธฐํ๋ฅผ ๋์์ ํด์ผํจ => ์ ์ธ๋ง ํ๋ฉด ์๋ฌ
var / let / const
- var๋ ์ฌ์ฉํ์ง ๋ง์
- ์ฌํ ๋น์ด ํ์ํ ๊ฒฝ์ฐ์๋ง let ์ฌ์ฉํ๊ณ ์ด์ธ์๋ const๋ฅผ ์ฌ์ฉํ์
'๐Language > ๐จ Javascript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ธ๋ผ์ฐ์ ๋ ๋๋ง ๊ณผ์ ์ดํดํ๊ธฐ (์์ฑ์ค) (0) | 2023.08.19 |
---|---|
[JS] fetch API ์ฌ์ฉํ๊ธฐ (0) | 2022.09.27 |
[JS] ๊ธฐ๋ณธ๊ฐ๋ (0) | 2021.10.12 |