π€ JavaScriptμ μλ£νκ³Ό JavaScriptλ§μ νΉμ±μ 무μμΌκΉ ?
Javascriptμ 8κ°μ§μ μλ£ν
1. Boolean
- λ
Όλ¦¬ μμλ₯Ό λνλ
- trueμ false λ κ°μ§μ κ°
2. Null
- null νλμ κ°λ§ κ°μ§ μ μμ
- nullμ ‘μ‘΄μ¬νμ§ μλ(nothing)’ κ°, ‘λΉμ΄ μλ(empty)’ κ°, ‘μ μ μλ(unknown)’ κ°μ λνλ΄λ λ° μ¬μ©
3. Undefined
- λ³μ μ μ νμΌλ κ°μ ν λΉ νμ§ μμ λ³μ
- undefined
4. Number
- μ«μν
- (-(2^53 − 1)λΆν° 2^53 − 1κΉμ§μ μ
- NaN("Not a Number") : κ³μ° μ€μ μλ¬κ° λ°μνλ€λ κ²μ λνλ΄μ£Όλ κ°, λΆμ ννκ±°λ μ μλμ§ μμ μν μ°μ°μ μ¬μ© λνλλ μλ¬
5. BigInt
- μ«μν
- Numberμ μμ νκ³λ₯Ό λμ΄μλ λ§€μ° ν° μ μλ₯Ό νν ν λ μ¬μ©
- μ μ λμ nμ λΆμ¬ νν ex) const BigInt = 12345...6789n
6.String
- λ¬Έμν(ν μ€νΈ λ°μ΄ν°) " " / ' ' / ` ` μ¬μ©, ` `μ λ¬Έμμ΄ μ€κ°μ λ³μλ ννμμ ${...} μμ λ£μ΄ μ¬μ©
- νκΈμκ° νλμ μμ / stringμ κΈΈμ΄λ μμμ μ / string μΈλ±μ€ 0μ 첫λ²μ§Έ μμ
- C μΈμ΄μ κ°μ μΌλΆ νλ‘κ·Έλλ° μΈμ΄μ λ¬λ¦¬ JavaScript λ¬Έμμ΄μ λΆλ³
7. Symbol
- κ³ μ νκ³ λ³κ²½ λΆκ°λ₯ν μμ κ°
- κ°μ²΄μ μμ± ν€λ‘ μ¬μ© κ°λ₯
8. Objeact(κ°μ²΄)
- κ°μ²΄λ₯Ό μ μΈν λλ¨Έμ§λ μλ£νμ νκ°μ§λ§ νν κ°λ₯νκΈ° λλ¬Έμ μμ μλ£ν BUT, κ°μ²΄λ λ°μ΄ν° 컬λ μ μ΄λ 볡μ‘ν κ°μ²΄λ₯Ό ννν μ μμ
- μμ±μ 'ν€' κ°μΌλ‘ μλ³νλ©°, ν€ κ°μΌλ‘λ λ¬Έμμ΄ κ°μ΄λ μ¬λ³Όμ μ¬μ©
μμ± κ°μΌλ‘λ λ€λ₯Έ κ°μ²΄λ₯Ό ν¬ν¨ν΄ λͺ¨λ νμ μ μ¬μ©ν μ μμΌλ―λ‘ λ³΅μ‘ν μλ£κ΅¬μ‘°μ ꡬμΆμ΄ κ°λ₯
λμ¨ν νμ (loosely typed)μ λμ (dynamic) μΈμ΄
Javascriptμ λ³μλ μ΄λ€ νΉμ νμ
κ³Ό μ°κ²°λμ΄ μμ§ μμΌλ©°, λͺ¨λ νμ
μ κ°μΌλ‘ ν λΉ λ° μ¬ν λΉμ΄ κ°λ₯ν¨
λμ νμ
let foo = 42 // fooκ° μ«μ
foo = 'bar' // fooκ° μ΄μ λ¬Έμμ΄
foo = true // fooκ° μ΄μ λΆλ¦¬μΈ
JavaScript νλ³ν
ν¨μμ μ°μ°μμ μ λ¬λλ κ°μ λλΆλΆ μ μ ν μλ£νμΌλ‘ μλ λ³ν
λ¬Έμνμ μ«μνμΌλ‘ λ³ννκΈ°
var λ³μ = parseInt(λ¬Έμ); //λ¬Έμλ₯Ό μ μν μ«μλ‘ λ³νν΄μ€
var λ³μ = parseFloat(λ¬Έμ); //λ¬Έμλ₯Ό μ€μν μ«μλ‘ λ³νν΄μ€
var λ³μ = Nember(λ¬Έμ); //λ¬Έμλ₯Ό μ μ&μ€μν μ«μλ‘ λ³νν΄μ€
μ«μνμ λ¬ΈμνμΌλ‘ λ³ννκΈ°
var λ³μ = String(μ«μ); //μ«μλ₯Ό λ¬Έμλ‘ λ³νν΄μ€
var λ³μ = μ«μ.toString(μ§λ²); //μ«μλ₯Ό λ¬Έμλ‘ λ³νν΄μ€ - λ³ννλ©΄μ μ§λ²μ λ°κΏ μ μμ
var λ³μ = μ«μ.toFixed(μμμ리μ); //μ«μλ₯Ό λ¬Έμλ‘ λ³νν΄μ€ - μ€μνμ μμμ μ리λ₯Ό μ§μ ν μ μμ
var λ³μ = μ«μ + "λ¬Έμμ΄"; //μ«μμ λ¬Έμμ΄μ ν λ¬Έμμ΄λ‘ λν΄μ€
λΆλ¦°νμΌλ‘ λ³ννκΈ°
alert( Boolean(1) ); // μ«μ 1(true)
alert( Boolean(0) ); // μ«μ 0(false)
alert( Boolean("hello") ); // λ¬Έμμ΄(true)
alert( Boolean("") ); // λΉ λ¬Έμμ΄(false)
λμ¨ν νμ (loosely typed)μ λμ (dynamic) μΈμ΄μ λ¬Έμ μ κ³Ό 보μν μ μλ λ°©λ²
μ μ μΈμ΄
- μ»΄νμΌ μκ°μ λ³μμ νμ μ΄ κ²°μ λλ μΈμ΄
- νμ μ¦, μλ£νμ μ»΄νμΌμμ κ²°μ ν¨
- C, C++, Java
- λ³μμ λ€μ΄κ° κ°μ ννμ λ°λΌ μλ£νμ μ§μ
- μ₯μ
1. μ»΄νμΌ μκ°μ λ³μμ νμ μ 체ν¬νλ―λ‘ μ¬μν λ²κ·Έλ€μ μ½κ² μ²΄ν¬ ν μ μμ
2. μ¦, νμ μλ¬λ‘ μΈν λ¬Έμ μ μ μ΄κΈ°μ λ°κ²½ν μ μμ΄ νμ μ μμ μ±μ΄ μ¬λΌκ°
λ¨μ
1. μλ£νμ λ§μ§ μλ κ°μ΄ λ€μ΄κ°λ©΄ μ»΄νμΌ μλ¬ λ°μ
λμ μΈμ΄
- λ°νμμ νμ μ΄ κ²°μ λλ μΈμ΄
- μ¦, μμ€κ° λΉλλ λ μλ£νμ κ²°μ νλ κ²μ΄ μλλΌ μ€ν μ κ²°μ λ¨
- Javascript, Ruby, Python
μ₯μ
1. λ§€λ² νμ μ μ¨μ€ νμκ° μμ΄ λΉ λ₯΄κ² μμ± κ°λ₯
2. λ°νμμ νμ μ΄ κ²°μ λκΈ° λλ¬Έμ μ μ°μ±μ΄ λμ
- λ¨μ
1. μ€ν λμ€μ λ³μμ μμμΉ λͺ»ν νμ μ΄ λ€μ΄μ type Errorκ° λ°μ ν μ μμ
- 보μ : μ½λ μμ± λ° μ€νμ νμ μ μλ£νμ μ νμΈ
undefinedμ nullμ λ―ΈμΈν μ°¨μ΄
곡ν΅μ
- λλ€ κ°κ°μ νμ λͺ (undefined, null)μ κ°μ΄ μ μΌν¨
undefined
- undefinedλ ‘μ무 κ°λ ν λΉλ°μ§ μμ μν’λ₯Ό μλ―Έ
- λ³μλ₯Ό μ μΈν μ΄ν κ°μ ν λΉνμ§ μμ λ³μλ₯Ό μ°Έμ‘°νλ©΄ undefinedκ° λ°ν
- λ³μλ₯Ό μ°Έμ‘°νμ λ undefinedκ° λ°νλλ€λ©΄ μ μΈ μ΄ν κ°μ΄ ν λΉλμ§ μμ μ¦, μ΄κΈ°νλμ§ μμ λ³μλΌλ κ²μ μ μ μμ
null
- ‘λΉμ΄μλ, μ‘΄μ¬νμ§ μλ κ°'(κ°μ λΆμ¬)μ μλ―Έ
- μλ°μ€ν¬λ¦½νΈλ λμλ¬Έμλ₯Ό ꡬλΆνλ―λ‘ nullμ Null, NULL λ±κ³Όλ λ€λ¦
- nullμ λ³μμ κ°μ΄ μλ€λ κ²μ μλμ μΌλ‘ λͺ μ(μλμ λΆμ¬)ν λ μ¬μ©
- λ³μμ nullμ ν λΉνλ κ²μ λ³μκ° μ΄μ μ μ°Έμ‘°νλ κ°μ λ μ΄μ μ°Έμ‘°νμ§ μκ² λ€λ μλ―Έ
- μ΄μ μ ν λΉλμ΄ μλ κ°μ λν μ°Έμ‘°λ₯Ό λͺ μμ μΌλ‘ μ κ±°νλ κ²μ μλ―Έ
λ³μμ κ°μ΄ μλ€λ κ²μ λͺ μνκ³ μΆμ λλ undefinedλ₯Ό ν λΉνλ κ²μ΄ μλλΌ nullμ ν λΉ
https://jin-coder.tistory.com/37
https://jin-coder.tistory.com/38
'νν΄99' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
Javascript κ°λ μ 리(3) - νΈμ΄μ€ν κ³Ό TDZ (0) | 2022.07.16 |
---|---|
Javascript κ°λ μ 리(2) - κ°μ²΄μ λΆλ³μ± (0) | 2022.07.16 |
[Chapter 1] eλ° 10μ‘° S.A(Starting Assignment) (0) | 2022.07.11 |