๋ชฉ์ฐจ
1. ๋ณ์
let ๋ณ์๋ช
;
let ๋ณ์๋ช
= ๊ฐ;
๋ณ์ ์ ์ธ ํค์๋ let
let a = 10;
console.log(a);
a = 5;
console.log(a);
>>>
10
5
console.log()๋ฅผ ํตํด์ ๊ฐ ์ถ๋ ฅ
์์
const ์์๋ช
= ๊ฐ;
const๋ฅผ ์ด์ฉํด ์์๋ฅผ ์ ์ธํ ์ ์์ผ๋ฉฐ ์ด๊ธฐํ๋ ๋ฐ๋์ ํจ๊ป ์งํ๋์ด์ผํ๋ค.
๋น์ฐํ ์๋ก์ด ๊ฐ์ ํ ๋น์ํค๋ ๊ฒ์ ๋ถ๊ฐํ๋ค.
์์๋ช ์ ๋๋ฌธ์ ๋ฐ ์ธ๋๋ฐ๋ฅผ ํ์ฉํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์ด๋ค.
MY_NUMBER
MAX_COUNT
โป ์ด๋, const๋ก ๊ฐ์ฒด๋ฅผ ์์ฑํ ๊ฒฝ์ฐ ์์ ์์ฒด๋ฅผ ์ฌํ ๋นํ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํ์ง๋ง,
๊ฐ์ฒด ๋ด๋ถ์ ๊ฐ์ ๋ณ๊ฒฝํ๋ ๊ฒ์ ๊ฐ๋ฅํ๋ค.
์ฃผ์
//
/**/
์ฃผ์์ ๋ค์๊ณผ ๊ฐ๋ค!
//
/* */
2. ์๋ฃํ (6์ข )
1) number
์ ์&๋ถ๋์์์ ์ number๋ผ๋ ๋ฐ์ดํฐ ํ์ ์ผ๋ก ์ฒ๋ฆฌ
let a = 1;
console.log(typeof a);
a = 1.2;
console.log(typeof a);
>>>
number
number
๋ฐ์ดํฐ ํ์ ์ ์ ์ ์๋ ๋ฌธ๋ฒ์ธ
typeof ๋ฅผ ํตํด์ ์ถ๋ ฅ์ ํด๋ณด์๋ค.
์ ์์ ๋ถ๋์์ ๋ชจ๋ number๋ฅผ ๋ฐํํ๋ค.
(์ ์๋ ์ค์๋ก ์ฒ๋ฆฌํ๋ ๊ฒ!)
โป NaN, Infinity ๋ number์ ๋ฒ์ฃผ์ ์ํ๋ค.
2) string
let a = "Hello World!"
console.log(typeof a)
>>>
string
"", '', ``(๋ฐฑํฑ)์ ๋๋ฌ์ธ์ธ ํ ์คํธ ๋ฐ์ดํฐ
โป ๋ฐ์ดํ์ ๋๋ฌ์ธ์ธ ํ ์คํธ๋ \ ๋ฅผ ์ด์ฉํ์ฌ ๊ธด ๋ฌธ์์ด์ ์ฌ๋ฌ ์ค์ ํํ์ด ๊ฐ๋ฅํ๋ค.(์ค๋ฐ๊ฟ์ ์๋)
โป ๋ฐ์ดํ๋ ๋ด๋ถ์ ํญ๊ณผ ์ค๋ฐ๊ฟ์ ์๋ตํ์ง๋ง, ๋ฐฑํฑ์ ๋ชจ๋ ๋ฐ์ํ๋ค.
ํ ํ๋ฆฟ ๋ฆฌํฐ๋ด
let name = 'KASSID';
let age = 25;
let married = false;
console.log(`์ ์ด๋ฆ์ ${name}์ด๊ตฌ์, ${age}์ธ ์
๋๋ค.
๊ทธ๋ฆฌ๊ณ ํ์ฌ ${married ? '๊ธฐํผ' : '๋ฏธํผ'}์
๋๋ค.`);
${}์์ ์์๋ ๋ณ์, ํํ์ ๋ฑ์ ์ฝ์ ํ ์ ์๋ค.
3) boolean
let a = 1 < 2;
console.log(typeof a, a);
a = 1 > 2;
console.log(typeof a, a);
>>>
boolean true
boolean false
true, false๋ ์๋ฌธ์๋ก!
let a = Boolean(2>1);
console.log(a)
a = Boolean('') // ๋ฌธ์์ด์ด ๋น์ด์์ผ๋ฉด false
b = Boolean('Hi') // ๊ทธ๋ ์ง ์์ผ๋ฉด true
console.log(a, b)
a = Boolean(0) // 0์ด๋ฉด false
b = Boolean(1) // ๊ทธ๋ ์ง ์์ผ๋ฉด true
console.log(a, b)
>>>
true
false true
false true
Boolean() ํจ์๋ฅผ ํตํด์ true, false๋ฅผ ๋ฐํํ ์ ์๋ค.
4) undefined
'๊ฐ์ด ํ ๋น๋์ง ์์'์ ๋ํ๋ธ๋ค.
๋ณ์์ ๊ธฐ๋ณธ๊ฐ์ ๊ธฐ๋ฅ์ ํ๋ค.
let a;
console.log(typeof a, a)
>>>
undefined undefined
๋ฐ์ดํฐ ํ์ ๊ณผ ๊ฐ ๋ชจ๋ undefined ๋ก ๋ฐํ์ด ๋๋ค.
5) null
'๊ฐ์ด ์์'์ด๋ค.
let a = null;
console.log(typeof a, a);
>>>
object null
๋ฐ์ดํฐ ํ์ ์ object, ๊ฐ์ null๋ก ๋ฐํํ๋ค.
โป null์ ํ์ ์ object๋ก ๋ฐํํ๋ ์ด์
- JS์ ์ ๋ช ํ ๋ฒ๊ทธ์ด๋ค. ์๋๋ null์ ๋ฐํํด์ผํ์ง๋ง ์๋ฐ์คํฌ๋ฆฝํธ์ ์ด์ฐฝ๊ธฐ ์ค์๋ก ์ธํด object๊ฐ ๋์๋ค๊ณ ํ๋ค.
ํ์ง๋ง ์ด๋ฅผ ๋ฐ๊พธ๊ธฐ ์ํด์๋ typeof null ์์ ์ฌ์ฉํ๋ ๋ชจ๋ ํ๋ก๊ทธ๋จ๋ค์ ์ํฅ์ด ๊ฐ๊ธฐ ๋๋ฌธ์ ๋ฐ๊ฟ ์ ์๋ค.
- ๊ฐ์ด null์ธ์ง ํ์ธํ๊ธฐ ์ํด์๋ "=== null์ด true" ์์ ํ์ธํ๋ฉด ๋๋ค!
โ undefined์ null์ ์ฐจ์ด
null
๊ฐ์ด ์กด์ฌํ์ง ์์ ์๋์ ์ผ๋ก ํํํ ๋ ์ฌ์ฉ
undefined
๊ณต๊ฐ์ ์์ง๋ง ๊ฐ์ด ํ ๋น๋์ง ์์ ํ์ธํ ๋ ์ฌ์ฉํ๋ค.
6) Symbol
ES6๋ถํฐ ์ถ๊ฐ๋ ๋ฌธ๋ฒ์ด๋ค.
์ฌ๋ณผ์ด๋,
๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅํ ์์ ํ์ ์ ๊ฐ์ด๊ณ
๋ค๋ฅธ ๊ฐ๊ณผ ์ค๋ณต๋์ง ์๋ ๊ณ ์ ํ ๊ฐ์ด๋ค.
(uniqueํ ๊ฐ)
Symbol(description)
let a = Symbol(1);
console.log(a, typeof a);
>>>
Symbol(1) symbol
Symbol()ํจ์์ ์์๋ '์ธ์'๋ก์ ๊ฐ์ ๋ฃ๋ ๊ฒ์ด ์๋
์ด๋ฒ์ ์์ฑ๋ ์ฌ๋ณผ์ ๋ํ ์ค๋ช (description)์ ๋ฃ๋ ๊ฒ์ด๋ค.
๋ฐ๋ผ์ ๊ฐ์ description์ ๋ฃ์ด๋ ์ผ์นํ์ง ์๋๋ค.
let a = Symbol(1);
let b = Symbol(1);
console.log(a == b);
console.log(a === b);
>>>
false
false
๊ฐ, ๋ฐ์ดํฐ ํ์ ๋ชจ๋ ์ผ์นํ์ง ์๋ ๊ฒ์ ์ ์ ์๋ค.
(๋ง๊ทธ๋๋ก uniqueํ ๊ฐ์ ์์ฑํด์ค!)
symbol ์ฐ์์
์ฌ๋ณผ๊ฐ์ ์ถฉ๋ ์ํ์ด ์๋ uniqueํ ํ๋กํผํฐ๋ฅผ ๋ง๋ค ๋
์ฌ์ฉํ ์ ์๋ค.
3. ํ๋ณํ
1) ๋ฐ์ดํฐ ํ์ ๋ณํ
์๋๋ ํ๋ณํ์ ํด์ฃผ๋ ํจ์๋ค์ด๋ค.
- Number() : number ์๋ฃํ์ผ๋ก
- String() : ๋ฌธ์์ด ์๋ฃํ์ผ๋ก
- Boolean() : ๋ถ ์๋ฃํ์ผ๋ก ex) 0=false
- parseInt() : numberํ์
'์ ์'๋ก
parseInt(์ ๋ ฅ, ์ง๋ฒ) - parseFloat() : numberํ์ '์์'๋ก
โป Number() ์ parseInt()์ ์ฐจ์ด์
- Number()๋ "๋ณํ๋์์ด ์ซ์๋ง"์์ด์ผํ๊ณ "์ ์์ ์์๋ฅผ ๊ตฌ๋ถํ์ง ์๊ณ " ๋ณ๊ฒฝํ๋ค.
('123'-> 123 | '3.14' -> 3.14)
- parseInt()๋ "๋ณํ ๋์์ ์ ์๊ฐ ์กด์ฌํ๋ค๋ฉด ๋ณํ"์ ํด์ค๋ค.
('3์' -> 3) (Number()๋ NaN ๋ฐํ)
โป prompt()
์ฌ์ฉ์๋ก๋ถํฐ ๊ฐ์ ์ ๋ ฅ๋ฐ๋ ํจ์์ด๋ค.
parseInt(prompt());
์์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์กฐํฉํ์ฌ ์ฌ์ฉ์๋ก๋ถํฐ์ ์ ๋ ฅ์ ๊ฐ์ผ๋ก ํ์ฉํ ์ ์๋ค.
2) ์๋ ํ๋ณํ
( 1 ) ์ฐ์ ์ฐ์ฐ์ผ๋ก ์ธํ ํ๋ณํ
- + : ๋ฌธ์์ด๋ก์ ๋ณํ์ด ์ฐ์ ์์
- ๊ทธ์ธ : ์ซ์๋ก์ ๋ณํ์ด ์ฐ์ ์์
์์)
1_๋ฌธ์์ด + ๋ค๋ฅธ ํ = ๋ฌธ์์ด
- ๋ฌธ์์ด์ด ์๋ ์๋ฃํ์ String()์ ์ ์ฉํ ํ ๊ทธ ๋ฐํ๊ฐ์ผ๋ก ์ฐ์ฐ์ ์งํํ๋ค.
console.log(typeof('๋ฌธ์'+1));
>>> string
2_๋ฌธ์์ด - ์ซ์
- ๋ฌธ์์ด์ Number()๋ฅผ ์ ์ฉํ ํ ๊ทธ ๋ฐํ๊ฐ์ผ๋ก ์ฐ์ฐ์ ์งํํ๋ค.
console.log('3'-1.3);
>>> 1.7
console.log('3์'-1.3);
>>> NaN
3_์ซ์์ boolean
console.log(1+true)
console.log(4*true)
console.log(4*false)
console.log('4'**false)
console.log(4-true)
--------
2
3
0
1
3
4_NaN
๋ฌด์์ ํ๋ NaN ๋ฐํ
console.log(4%'two')
--------
NaN
( 2 ) ๋น๊ต์ฐ์ฐ์๋ก ์ธํ ํ๋ณํ
console.log(2<'3')
console.log(1 ==true)
console.log('2' <= true)
console.log('two'>=1)
--------
true
true
false
false // ๋น๊ต ๋ถ๊ฐ ์์๋ false ๋ฐํ
'๐ | WEB DEV > Vanilla JS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
JS_๊ธฐ๋ณธ๋ฌธ๋ฒ (5)_๋ฐฐ์ด 1 (0) | 2022.02.15 |
---|---|
JS_๊ธฐ๋ณธ๋ฌธ๋ฒ (4)_๋ฐ๋ณต๋ฌธ (0) | 2022.02.11 |
JS_๊ธฐ๋ณธ๋ฌธ๋ฒ (3)_๊ฐ์ฒด (0) | 2022.02.10 |
JS_๊ธฐ๋ณธ ๋ฌธ๋ฒ (2)_์ฐ์ฐ์&ํจ์ (0) | 2022.02.08 |
JS_์ฝ๋ฉํ๊ฒฝ ๊ตฌ์ถ(w. VSCODE) (0) | 2022.02.07 |
๋๊ธ