π [λ νκ°] μ½μ΄ μλ°μ€ν¬λ¦½νΈ(μ μ¬λ¨)
βοΈ μλ‘
μλ°μ€ν¬λ¦½νΈ λ¬Έλ²μ λ
νμΌλ‘ 곡λΆνμ§λ§, μ μ κΈ°μ λ©΄μ μμ κ°λ
μ λ¬Όμ΄λ³΄λ©΄ λͺ
ννκ² λ΅λ³νμ§ λͺ»ν΄ λ μμ μκ² μ€λ§ν μ μ΄ λλ¬ μμλ€. 3λ²μ λ©΄μ νλ½ λμ λ§λ‘ μ€λͺ
νκΈ° μ΄λ €μ΄ κ°λ
μ λκ»μ§ μμ μ±
μΌλ‘ 곡λΆνκ³ μΆλ€κ³ μκ°μ νλλ°, μλΌλμμ κ΄λ ¨ μμ μ μ΄ν΄λ³΄λ€κ° μ½μ΄ μλ°μ€ν¬λ¦½νΈλΌλ μ±
μ΄ μμκ³ , νλ λμμ§ μκ³ λ¬΄μλ³΄λ€ μ±
μ΄ λκ»μ§ μμμ ꡬ맀νμ¬ μ½μ΄λ΄€λ€. μ±
μ μ½ 200νμ΄μ§
μ λμ΄κ³ , λ§€μΌ μλ²½ 05:30~07:00
κΉμ§ μ½μλ€. λ
μκΈ°κ°μ 21.08.27. ~ 21.10.5.
μ΄λ€.
βοΈ λ³Έλ‘
κΈμ΄μ΄κ° μ± μ μ§νν μ΄μ λ μλ°μ€ν¬λ¦½νΈμ ν΅μ¬ κ°λ λ€μ μ νν μ΄ν΄νλ κ²μ΄ μ€μνλ€λ κ²μ΄ μ£Όλ μ΄μ κ³ , μλ°μ€ν¬λ¦½νΈλ₯Ό κ΄ν΅νλ μ΄λ‘ μ νμ ν¨μΌλ‘μ¨ μ λ°μ μΈ κΈ°λ³ΈκΈ°λ₯Ό λ€ μ§κΈ° μν λͺ©μ μΌλ‘ μ§ννλ€κ³ νλ€. μ± μ λ€μμ μ£Όμ λ€μ λ€λ£¨κ³ μλ€.
- λ°μ΄ν° νμ : λ³μ μ μΈ, λ°μ΄ν° ν λΉ, κΈ°λ³Έν λ°μ΄ν°, μ°Έμ‘°ν λ°μ΄ν°, λΆλ³ κ°μ²΄, undefinedμ null λ±
- μ€ν 컨ν μ€νΈ: VariableEnvironment, LexicalEnvironment, νΈμ΄μ€ν , μ€μ½ν μ²΄μΈ λ±
- this: λ©μλ, ν¨μ, μ½λ°± ν¨μ νΈμΆ μ ν¨μ λ΄λΆμμμ this, μμ±μ ν¨μμμμ this, call, apply, bind, νμ΄ν ν¨μ λ±
- μ½λ°± ν¨μ: μ μ΄κΆ, λΉλκΈ° μ μ΄ λ±
- ν΄λ‘μ : ν΄λ‘μ μ λ©λͺ¨λ¦¬ κ΄λ¦¬, ν΄λ‘μ νμ© μ¬λ‘, μ κ·Ό κΆν μ μ΄, λΆλΆ μ μ© ν¨μ, μ»€λ§ ν¨μ λ±
- νλ‘ν νμ : constructor, prototype, instance, νλ‘ν νμ 체μΈ, λ©μλ μ€λ²λΌμ΄λ, λ€μ€ νλ‘ν νμ μ²΄μΈ λ±
- ν΄λμ€: ν΄λμ€μ μΈμ€ν΄μ€, ν΄λμ€ μμ, ES6μ ν΄λμ€μ ν΄λμ€ μμ λ±
μ± μ μ½μ΄λ³΄λκΉ μλ°μ€ν¬λ¦½νΈμ λ¬Έλ²μ μμ λͺ¨λ₯΄λ λΆλ€λ³΄λ€ μ΄λ μ λ λ¬Έλ²μ μκ³ μλλ° λͺ ννκ² κ°λ μ μ€λͺ νκΈ° νλ€κ±°λ, μ΄μ λ¬Έλ²μ 보μν μλ‘μ΄ λ¬Έλ²μ΄ μ λμ€κ² λμλμ§ λͺ κ°μ§ μ¬λ‘λ€κ³Ό ν¨κ» 곡λΆνκ³ μΆμ λΆλ€μκ² μΆμ²νκ³ μΆμ μμ μ΄λ€.
μ΄ μ±
μ μ½κ³ λμ λλ΅μ μΌλ‘ λͺ¨νΈνκ² μκ³ μμλ this, closure, prototype, classμ λν΄ λͺ
ννκ² λ°°μΈ μ μμ΄μ μ’μκ³ κ°κ°μ λ¬Έλ²μ΄ μΈμ μ¬μ©ν΄μΌ bestμΈμ§, μ¬λ‘λ³λ‘ μλ €μ£Όμ΄μ λμμ΄ λ§μ΄ λμλ μ±
μ΄λ€. μ μΌ λ§μμ λ€μλ λΆλΆμ class
λ₯Ό λ°°μ°κ³ λμ ν μ΄ νλ‘μ νΈμΈ starbucks-projectμλ μκ²λλ§ μ μ©ν΄λ΄€λλ°, λν
μΌ νμ΄μ§μμ useParams
λ₯Ό μ¬μ©νμ¬ ν΄λΉ SAMPLE_DATA
λ₯Ό κ°μ Έμ¬ λ class
λ¬Έλ²μ μ¬μ©νλ€. μ±
μ μ½κΈ° μ κΉμ§λ class
λ¬Έλ²μ μ€μ λ‘ μ μ©ν΄λ³΄μλ μκ°μ μ λͺ»νλλ°, μ’μ κ²½νμ΄μλ€.
import { RECIPE_SAMPLE } from "../fixture";
import { RecipeType } from "../types";
interface Methods {
getRecipe: (targetId: string) => void;
}
export class Recipes implements Methods{
getRecipe = (targetId: string): RecipeType[] => {
return RECIPE_SAMPLE.filter((ele) => ele.id === targetId);
}
}
βοΈ κ²°λ‘
μλ°μ€ν¬λ¦½νΈμ ν΅μ¬ λ¬Έλ²μ λ°°μΈ μ μλ μ’μ μ± μ΄μλ€. λ€μμ μλ°μ€ν¬λ¦½νΈμ λ¬Έλ²μ μμΈν λ°°μΈ μ μλ λͺ¨λ μλ°μ€ν¬λ¦½νΈ λ₯ λ€μ΄λΈλ₯Ό μ½μ΄λ΄μΌκ² λ€.
λκΈ