์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- ํ๋ก๊ทธ๋๋จธ์ค ์ ๋ฌธ
- ์ ์ ๋น์ ์
- ํ๋ก๊ทธ๋๋จธ์ค js
- ๋ณ์ js
- ์๊ณ ๋ฆฌ์ฆ
- ์๋ฐ์คํฌ๋ฆฝํธ min
- ํ๋ก๊ทธ๋๋จธ์ค
- ์๊ณ ๋ฆฌ์ฆ js
- ๋์์ธ ํจํด
- ๋ฅ๋ค์ด๋ธ ๋ณ์
- ์๋ฐ์คํฌ๋ฆฝํธ max
- ์๋ฐ์คํฌ๋ฆฝํธ floor
- ๋ฐ์ดํฐ๋ฒ ์ด์ค key
- ์๋ฐ์คํฌ๋ฆฝํธ
- ํ๋ก๊ทธ๋๋จธ์ค ์๋ฐ์คํฌ๋ฆฝํธ
- ์๋ฐ์คํฌ๋ฆฝํธ round
- ๋ค๋จ๊ณํ
- programmers
- ์๋ฐ์คํฌ๋ฆฝํธ abs
- ์๋ฐ์คํฌ๋ฆฝํธ pow
- reduce
- ํ๋ก๊ทธ๋๋จธ์ค ์๋ฆฟ์ ๋ํ๊ธฐ
- JS
- ํ๋ก๊ทธ๋๋จธ์ค ์น์์ด
- ์๋ฐ์คํฌ๋ฆฝํธ ceil
- javascript
- ์๋ฐ์คํฌ๋ฆฝํธ sqrt
- ์๋ฐ์คํฌ๋ฆฝํธ for of
- ํ๋ก๊ทธ๋๋จธ์ค ์๊ณ ๋ฆฌ์ฆ
- ์๋ฐ์คํฌ๋ฆฝํธ for in
- Today
- Total
eazyseon
15์ฅ let,const ํค์๋์ ๋ธ๋ก ๋ ๋ฒจ ์ค์ฝํ ๋ณธ๋ฌธ
15์ฅ let,const ํค์๋์ ๋ธ๋ก ๋ ๋ฒจ ์ค์ฝํ
eazyseon 2023. 11. 21. 23:51
15.1 var ํค์๋๋ก ์ ์ธํ ๋ณ์์ ๋ฌธ์ ์
-๋ณ์ ์ค๋ณต ์ ์ธ ํ์ฉ
var ํค์๋๋ก ์ ์ธํ ๋ณ์๋ ์ค๋ณต ์ ์ธ์ด ๊ฐ๋ฅํ๋ค.
์ด๊ธฐํ๋ฌธ์ด ์๋ ๋ณ์ ์ ์ธ๋ฌธ์ ๋ฌด์๋๋ค. ์๋ฌ๋ ๋ฐ์ํ์ง ์๋๋ค.
var x = 1
var y = 1;
var x = 100;
var y;//์ด๊ธฐํ๋ฌธ์ด ์๋ ๋ณ์ ์ ์ธ๋ฌธ์ ๋ฌด์๋๋ค.
console.log(x);//100
console.log(y);//1
-ํจ์ ๋ ๋ฒจ ์ค์ฝํ
var ํค์๋๋ก ์ ์ธํ ๋ณ์๋ ์ค๋ก์ง ํจ์์ ์ฝ๋ ๋ธ๋ก๋ง์ ์ง์ญ ์ค์ฝํ๋ก ์ธ์ ํ๋ค.
๊ทธ๋์ if๋ฌธ์ด๋ for๋ฌธ์์ ์ ์ธํ ๋ณ์๋ ์ ์ญ ๋ณ์๊ฐ ๋๋ค.
- ๋ณ์ ํธ์ด์คํ
var ํค์๋๋ก ๋ณ์๋ฅผ ์ ์ธํ๋ฉด ๋ณ์ ์ ์ธ๋ฌธ์ด ์ค์ฝํ์ ์ ๋๋ก
๋์ด ์ฌ๋ ค์ง ๊ฒ์ฒ๋ผ ๋์ํ๋ค. ๊ทธ๋์ ์ ์ธ๋ฌธ ์ด์ ์ ์ฐธ์กฐํ๋ฉด undefined๋ฅผ ๋ฐํํ๋ค.
15.2 let ํค์๋
-๋ณ์ ์ค๋ณต ์ ์ธ ๊ธ์ง
let์ผ๋ก ๋ณ์๋ฅผ ์ค๋ณต ์ ์ธํ๋ฉด ๋ฌธ๋ฒ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค.
let a = 100;
let a = 200;//SyntaxError: Identifier 'a' has already been declared.
-๋ธ๋ก ๋ ๋ฒจ ์ค์ฝํ
let์ผ๋ก ์ ์ธํ ๋ณ์๋ ๋ชจ๋ ์ฝ๋ ๋ธ๋ก์ ์ง์ญ ์ค์ฝํ๋ก ์ธ์ ํ๋ค.
let foo = 1;
{
let foor = 2;
let bar = 3;
}
console.log(foo); //1
console.log(bar);
์ ์ญ์์ ์ ์ธ๋ foo์ ์ฝ๋ ๋ธ๋ก ๋ด์ foo๋ ๋ค๋ฅธ ๋ณ๊ฐ์ ๋ณ์๋ค.
ํจ์ ๋ด์ ์ฝ๋ ๋ธ๋ก์ ํจ์ ๋ ๋ฒจ ์ค์ฝํ์ ์ค์ฒฉ๋๋ค.
- ๋ณ์ ํธ์ด์คํ
let ํค์๋๋ก ์ ์ธํ ๋ณ์๋ ํธ์ด์คํ
์ด ๋ฐ์ํ์ง ์๋ ๊ฒ์ฒ๋ผ ๋์ํ๋ค.
console.log(foo);//ReferenceError: foo is not defined
let foo;
let ํค์๋๋ก ์ ์ธํ ๋ณ์๋ ์ ์ธ๊ณผ ์ด๊ธฐํ๊ฐ ๋ถ๋ฆฌ๋์ด ์งํ๋๋ค.
๋ฐํ์ ์ด์ ์ ์ ์ธ๋จ๊ณ๊ฐ ์คํ๋์ง๋ง ์ด๊ธฐํ๋ ๋ณ์ ์ ์ธ๋ฌธ์ ๋๋ฌํ์ ๋ ์คํ๋๋ค.
console.log(foo);//ReferenceError: foo is not defined
let foo;
console.log(foo)//undefined
์ค์ฝํ์ ์์ ์ง์ ๋ถํฐ ์ด๊ธฐํ ๋จ๊ณ ์์ ์ง์ ๊น์ง ๋ณ์๋ฅผ ์ฐธ์กฐํ ์ ์๋ค.
์ด ๊ตฌ๊ฐ์ ์ผ์์ ์ฌ๊ฐ์ง๋ (TDZ)๋ผ๊ณ ๋ถ๋ฅธ๋ค.
15.3 const ํค์๋
const ํค์๋๋ ์์๋ฅผ ์ ์ธํ๊ธฐ ์ํด ์ฌ์ฉํ๋ค.
- ์ ์ธ๊ณผ ์ด๊ธฐํ
const ํค์๋๋ก ์ ์ธํ ๋ณ์๋ ๋ธ๋ก ๋ ๋ฒจ ์ค์ฝํ๋ฅผ ๊ฐ์ง๋ฉฐ, ๋ณ์ ํธ์ด์คํ
์ด ๋ฐ์ํ์ง ์๋ ๊ฒ์ฒ๋ผ ๋์ํ๋ค.
-์ฌํ ๋น ๊ธ์ง
const๋ก ์ ์ธํ ๋ณ์๋ ์ฌํ ๋น์ด ๊ธ์ง๋๋ค.
const foo = 1;
foo = 2;//TypeError: Assignment to constant variable.
- const ํค์๋์ ๊ฐ์ฒด
const ํค์๋๋ก ์ ์ธ๋ ๋ณ์์ ๊ฐ์ฒด๋ฅผ ํ ๋นํ ๊ฒฝ์ฐ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๋ค.
๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅํ ์์ ๊ฐ์ ์ฌํ ๋น ์์ด ๋ณ๊ฒฝํ ์ ์์ง๋ง ๊ฐ์ฒด๋ ์ฌํ ๋น ์์ด๋ ์ง์ ๋ณ๊ฒฝ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ด๋ค.
const person = {
name : 'Lee'
};
person.name = 'Kim';
console.log(person);//{ name: 'Kim' }
์ผ๋จ const ํค์๋๋ฅผ ์ฌ์ฉํ์!
'๐์ฑ > ๋ฅ๋ค์ด๋ธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
16์ฅ ํ๋กํผํฐ ์ดํธ๋ฆฌ๋ทฐํธ (0) | 2023.11.24 |
---|---|
12์ฅ ํจ์ (2) | 2023.11.23 |
14์ฅ ์ ์ญ ๋ณ์์ ๋ฌธ์ ์ (0) | 2023.11.20 |
13์ฅ ์ค์ฝํ (1) | 2023.11.20 |
8์ฅ ์ ์ด๋ฌธ (0) | 2023.11.17 |