νμ λ³νκ³Ό λ¨μΆ νκ°
- κ°λ°μκ° μλμ μΌλ‘ κ°μ νμ μ λ³ννλ κ²μ λͺ μμ νμ λ³ν λλ νμ μΊμ€ν * μ΄λΌκ³ ν©λλ€
- κ°λ°μμ μλμ μκ΄μμ΄ ννμμ νκ°νλ λμ€μ μλ°μ€ν¬λ¦½νΈ μμ§μ μν΄ μλμΌλ‘ λ³ν λλ κ²μ μ묡μ νμ λ³ν λλ νμ κ°μ λ³ν μ΄λΌ ν©λλ€.
μ묡μ νμ λ³ν
- μ묡μ νμ
λ³νμ΄ λ°μνλ©΄ λ¬Έμμ΄, μ«μ, λΆλ¦¬μΈ κ°μ μμνμ
μ€ νλλ‘ νμ
μ μλ λ³ννλ€.
λ¬Έμμ΄νμ μΌλ‘ λ³ν
+
μ°μ°μλ λ¬Έμμ΄μ λ§λλ©΄ λ¬Έμμ΄ μ°κ²° μ°μ°μλ‘ λμνμ¬ μ묡μ μΌλ‘ λ¬Έμμ΄λ‘ νμ μ λ³νν¨
// μ«μ νμ
0 + '' // -> "0"
-0 + '' // -> "0"
1 + '' // -> "1"
-1 + '' // -> "-1"
NaN + '' // -> "NaN"
Infinity + '' // -> "Infinity"
-Infinity + '' // -> "-Infinity"
// λΆλ¦¬μΈ νμ
true + '' // -> "true"
false + '' // -> "false"
// null νμ
null + '' // -> "null"
// undefined νμ
undefined + '' // -> "undefined"
// μ¬λ² νμ
(Symbol()) + '' // -> TypeError: Cannot convert a Symbol value to a string
// κ°μ²΄ νμ
({}) + '' // -> "[object Object]"
Math + '' // -> "[object Math]"
[] + '' // -> ""
[10, 20] + '' // -> "10,20"
(function(){}) + '' // -> "function(){}"
Array + '' // -> "function Array() { [native code] }"
μ«μ νμ μΌλ‘ λ³ν
- μ°μ μ°μ°μμ κ²½μ° νΌμ°μ°μλ₯Ό μ«μνμ
μΌλ‘ λ³ν
'12' + 3 // κ²°κ³Ό : '123' λ¬Έμμ΄ μ°κ²° μ°μ°μλ‘ λμ 3μ λ¬Έμμ΄λ‘ λ³ν '12' - 3 // κ²°κ³Ό : 9 μ°μ μ°μ°μλ‘ λμ 12λ₯Ό μ«μνμ μΌλ‘ λ³ν
- λΉκ΅μ°μ°μ λ μ«μ νμ μ΄ μλ κ²μ μ«μνμ μΌλ‘ λ³ν
- μλ°μ€ν¬λ¦½νΈ μμ§μ
+
λ¨ν μ°μ°μλ₯Ό ν΅ν΄ νμ λ³ν μ€ν
// λ¬Έμμ΄ νμ
+'' // -> 0
+'0' // -> 0
+'1' // -> 1
+'string' // -> NaN
// λΆλ¦¬μΈ νμ
+true // -> 1
+false // -> 0
// null νμ
+null // -> 0
// undefined νμ
+undefined // -> NaN
// μ¬λ² νμ
+Symbol() // -> ypeError: Cannot convert a Symbol value to a number
// κ°μ²΄ νμ
+{} // -> NaN
+[] // -> 0
+[10, 20] // -> NaN
+(function(){}) // -> NaN
λΆλ¦¬μΈ νμ λ³ν
- jsμμ falseλ‘ λ°ν λλ κ²λ€
- false
- undefined
- null
- 0, -0
- NaN
- ''(λΉ λ¬Έμμ΄)
- λλ¨Έμ§λ μ λΆ trueλ‘ μ·¨κΈ (λΉ λ¬Έμμ΄ μλ λ¬Έμμ΄, λΉ λ°°μ΄
[]
, λΉ κ°μ²΄{}
)
λͺ μμ νμ λ³ν
λ¬Έμμ΄ νμ λ³ν
- String μμ±μ ν¨μ new ν€μλ μμ΄ μ¬μ©
- toString λ©μλ μ¬μ©
- λ¬Έμμ΄ μ°κ²° μ°μ°μ μ¬μ©
μ«μ νμ μΌλ‘ λ³ν
- Number μμ±μ ν¨μλ₯Ό new ν€μλ μμ΄ νΈμΆ
- parseInt, parseFloatν¨μ μ¬μ©
+
λ¨ν μ°μ μ°μ°μλ₯Ό μ¬μ©*
μ°μ μ°μ°μλ₯Ό μ¬μ©
λΆλ¦¬μΈ νμ μΌλ‘ λ³ν
- Boolean μμ±μ ν¨μ new ν€μλ μμ΄ νΈμΆ
- !λΆμ λ
Όλ¦¬ μ°μ°μλ₯Ό λ λ² μ¬μ©
// 2. ! λΆμ λ Όλ¦¬ μ°μ°μλ₯Ό λλ² μ¬μ©νλ λ°©λ² // λ¬Έμμ΄ νμ => λΆλ¦¬μΈ νμ !!'x'; // -> true !!''; // -> false !!'false'; // -> true // μ«μ νμ => λΆλ¦¬μΈ νμ !!0; // -> false !!1; // -> true !!NaN; // -> false !!Infinity; // -> true // null νμ => λΆλ¦¬μΈ νμ !!null; // -> false // undefined νμ => λΆλ¦¬μΈ νμ !!undefined; // -> false // κ°μ²΄ νμ => λΆλ¦¬μΈ νμ !!{}; // -> true !![]; // -> true
λ¨μΆ νκ°
λ¨μΆνκ°λ ννμμ νκ°νλ λμ€μ νκ° κ²°κ³Όκ° νμ λ κ²½μ° λλ¨Έμ§ νκ° κ³Όμ μ μλ΅νλ κ²μ λ§νλ€.
λ Όλ¦¬ μ°μ°μλ₯Ό μ¬μ©ν λ¨μΆ νκ°
- λ Όλ¦¬ μ°μ°μ κ²°κ³Όλ₯Ό κ²°μ ν νΌμ°μ°μλ₯Ό νμ λ³ννμ§ μκ³ κ·Έλλ‘ λ°ννλ€.
- λ¨μΆ νκ°λ₯Ό μ¬μ©ν ifλ¬Έ λ체
var trueChk = true; var falseChk = false;
const msg = trueChk && 'μλ£'; // trueμΌλ λ§ μλ£λ₯Ό ν λΉ
const msg2 = falseChk || 'λ―Έμλ£' // false μΌλλ§ λ―Έμλ£ ν λΉ
- κ°μ²΄λ₯Ό κ°λ¦¬ν€κΈ°λ₯Ό κΈ°λνλ λ³μκ° null λλ undefinedκ° μλμ§ νμΈνκ³ νλ‘νΌν°λ₯Ό μ°Έμ‘°ν λ μ μ©
```js
var elem = null;
var value = elem && elem.value; // null,
// null 체ν¬μνλ©΄ μλλ μλ¬
μ΅μ λ 체μ΄λ μ°μ°μ
- μ΅μ
λ 체μ΄λ μ°μ°μ :
?.
- μ’νμ νΌμ°μ°μκ°
null
λλundefined
μΌ κ²½μ°undefined
λ°ν, κ·Έλ μ§ μμΌλ©΄ μ°νμ νλ‘νΌν°λ₯Ό μ°Έμ‘° - νΌμ°μ°μκ°
false
λ‘ νκ°λλ κ²½μ°λΌλnull
λλundefined
κ° μλλΌλ©΄ μ°νμ νλ‘νΌν° μ°Έμ‘°λ₯Ό μ΄μ΄κ°λ€
null λ³ν© μ°μ°μ
- μ’νμ νΌμ°μ°μκ°
null
λλundefined
μΈ κ²½μ° μ°νμ νΌμ°μ°μλ₯Ό λ°ννκ³ κ·Έλ μ§ μμΌλ©΄ μ’νμ νΌμ°μ°μλ₯Ό λ°ν - λ³μμ κΈ°λ³Έκ°μ μ€μ ν λ μ μ©
'javascript > π study' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[2μ£Όμ°¨ μ€ν°λ]11μ₯-μμκ°κ³Ό κ°μ²΄μ λΉκ΅ (0) | 2022.02.06 |
---|---|
[2μ£Όμ°¨ μ€ν°λ]10μ₯-κ°μ²΄ 리ν°λ΄ (0) | 2022.02.06 |
[μ€ν°λ 1μ£Όμ°¨]7μ₯ μ°μ°μ (0) | 2022.02.04 |
[μ€ν°λ 1μ£Όμ°¨] 6μ₯ λ°μ΄ν° νμ (0) | 2022.02.04 |
[μ€ν°λ 1μ£Όμ°¨] 5μ₯ ννμκ³Ό λ¬Έ (0) | 2022.02.04 |
λκΈ