//μ£Όμμ²λ¦¬
π‘ν¨μ
ν¨μ μ μΈμ: function do_something() { ... }
ν¨μ ννμ: let do_something = function [ν¨μ μ΄λ¦]() { ... } //ν¨μ μ΄λ¦μ μλ΅κ°λ₯
νμ΄ν ν¨μ: let do_something = () => { ... } //ν¨μ ννμμ λ¨μΆν
π‘λ³μ
1. λ³μλ λ¬Έμμ μ«μ, $μ_λ§ μ¬μ©
2. 첫κΈμλ μ«μκ° λ μ μμ
3. μμ μ΄λ μ¬μ©ν μ μμ
4. κ°κΈμ μμλ λλ¬Έμλ‘ μλ €μ€κ²
const μ λλ‘ λ°λμ§ μλ μμ μμ x
*μΌλ¨ constλ‘ νκ³ λ³λ μμ λ§ν κ²λ€μ letμΌλ‘νκΈ° (보μμ±)
ex) const PI =3.14; λλ¬Έμλ‘ μ μΈνλκ² μ’μ
λ³ν μ μλ κ°μ letμΌλ‘ μ μΈ
5. λ³μλͺ μ μ½κΈ° μ½κ³ μ΄ν΄ν μ μκ² μμ±
var | const | let |
νλ² μ μΈλ λ³μλ₯Ό λ€μ μ μΈν μ μμ μ μΈνκΈ° μ μ μ¬μ©ν μ μμ 1. μ μΈ λ° μ΄κΈ°ν λ¨κ³ 2. ν λΉ λ¨κ³ function scope |
1.μ μΈ + μ΄κΈ°ν + ν λΉ *μ΄κΈ°ν undefinedλ₯Ό ν λΉ ν΄μ£Όλ λ¨κ³ Block scope Immutable |
1. μ μΈ 2.μ΄κΈ°ν 3.ν λΉ Block scope Mutable |
μ¬μ μΈ | μ¬ν λΉ | |
var | O | O |
let | X | O |
const | X | X |
*var hoisting: μ΄λμ μ μΈνλμ μκ΄μμ΄ νμ μ μΌ μλ‘ λμ΄ μ¬λ €μ£Όλ κ²
* {μ€κ΄νΈ}: λΈλ‘
π‘μλ£ν
1.λ¬Έμν
2.μ«μν
NaN μ«μκ° μλ
3.Boolean - true μ°Έ , false κ±°μ§
4. nullκ³Ό undefined
5.κ°μ²΄ν object
6.μ¬λ³Όν
7.typeof μ°μ°μ <λ€λ₯Έμ¬λμ΄ λ§λ κ±° λ³Όλ μ¬μ©>
π‘λνμμ - λ¨μ : μ€ν¬λ¦½νΈ μΌμ μ μ§ / μ€νμΌλ§x
1.alert μλ €μ€
2.prompt μ λ ₯ λ°μ (λ¬Έμν)
3.confirm νμΈ λ°μ - μ·¨μλ²νΌμ΄λ κ°μ΄ μμ
π‘μλ νλ³ν / λͺ μμ νλ³ν
*μμ λλ¬Έμλ‘ ν κ²/ κ°λ‘μμκ² λ°κΏμ€
String() λ¬ΈμνμΌλ‘ λ³ν
Number() μ«μνμΌλ‘ λ³ν / μ«μκ°μλμ NaN
Boolean() λΆλ¦°νμΌλ‘ λ³ν
* Number(null) // 0 , Number(undefined) // NaN
* falseλ‘ λ³΄λ κ²½μ°
-0, 0, Null, NaN, undefined, false, ''
*λΉλ¬Έμμ΄ '' false μ΄μ§λ§ λΉ λ°°μ΄, λΉ κ°μ²΄λ true
> Boolean("") false > Boolean([]) true > Boolean({}) true |
π‘μ°μ°μ
= κ°μ ν λΉ
κΈ°λ³Έμ°μ°μ : + λνκΈ°, - λΉΌκΈ° , *κ³±νκΈ°, / λλκΈ°, %λλ¨Έμ§, **κ±°λμ κ³±
μ°μ μμ */ > +-
μ¦κ°μ°μ°μ : ++ λλ² ++num; (μμ μ¨μΌλ) / num++; λ€μ μ μ μ μ¦κ°μν€κΈ° μ μ κ°
κ°μμ°μ°μ: -- λλ²
μΌμΉμ°μ°μ ===
λνκΈ°ν λΉμ°μ°μ += μ°μ°μμ μ€λ₯Έμͺ½μμ κ°μ κ°μ Έμ μΌμͺ½μ λ³μμ μΆκ°
λΉκ΅μ°μ°μ < ν¬λ€ , >μλ€, <=ν¬κ±°λ κ°λ€, >=μκ±°λ κ°λ€, ==κ°λ€ , != λ€λ₯΄λ€(λΈλ¦°ν)
== | μΌμͺ½ νΌμ°μ°μμ μ€λ₯Έμͺ½ νΌμ°μ°μμ κ°μ΄ κ°μΌλ©΄ μ°Έμ λ°νν¨. |
=== | μΌμͺ½ νΌμ°μ°μμ μ€λ₯Έμͺ½ νΌμ°μ°μμ κ°μ΄ κ°κ³ , κ°μ νμ μ΄λ©΄ μ°Έμ λ°νν¨. |
!= | μΌμͺ½ νΌμ°μ°μμ μ€λ₯Έμͺ½ νΌμ°μ°μμ κ°μ΄ κ°μ§ μμΌλ©΄ μ°Έμ λ°νν¨. |
!== | μΌμͺ½ νΌμ°μ°μμ μ€λ₯Έμͺ½ νΌμ°μ°μμ κ°μ΄ κ°μ§ μκ±°λ, νμ μ΄ λ€λ₯΄λ©΄ μ°Έμ λ°νν¨. |
> | μΌμͺ½ νΌμ°μ°μμ κ°μ΄ μ€λ₯Έμͺ½ νΌμ°μ°μμ κ°λ³΄λ€ ν¬λ©΄ μ°Έμ λ°νν¨. |
>= | μΌμͺ½ νΌμ°μ°μμ κ°μ΄ μ€λ₯Έμͺ½ νΌμ°μ°μμ κ°λ³΄λ€ ν¬κ±°λ κ°μΌλ©΄ μ°Έμ λ°νν¨. |
< | μΌμͺ½ νΌμ°μ°μμ κ°μ΄ μ€λ₯Έμͺ½ νΌμ°μ°μμ κ°λ³΄λ€ μμΌλ©΄ μ°Έμ λ°νν¨. |
<= | μΌμͺ½ νΌμ°μ°μμ κ°μ΄ μ€λ₯Έμͺ½ νΌμ°μ°μμ κ°λ³΄λ€ μκ±°λ κ°μΌλ©΄ μ°Έμ λ°νν¨. |
*κ±°λμ κ³± const num = 2**3; console.log(num); //8 |
π‘λ Όλ¦¬ μ°μ°μ
|| (or) - μ¬λ¬κ° μ€ νλλΌλ trueλ©΄ true μ¦ λͺ¨λ κ°μ΄ false μΌλλ§ falseλ₯Ό λ°ν
&& (and) - λͺ¨λ κ°μ΄ trueλ©΄true μ¦ νλλΌλ false λ©΄ falseλ₯Ό λ°ν
! (not) - trueλ©΄false / false λ©΄true λ°λλ‘ λ°κΏ
π‘μΆμ² λ° μ°Έκ³ μλ£
μ½λ©μλ§ https://www.youtube.com/watch?v=KF6t61yuPCY
μμ / λͺ¨λ μ€ν¬λ¦½νΈ Deep Dive - μ΄μ λͺ¨ μ§μ