[JS] μ½λ μμ± tips
https://yozm.wishket.com/magazine/detail/1836/
λμ μλ°μ€ν¬λ¦½νΈ μμ± μ΅κ΄κ³Ό μλ³νκΈ° | μμ¦IT
λ©μ§ νλ‘κ·Έλλ°μ μΈκ³λ‘ 첫걸μμ λ΄λλ λ, μ°λ¦¬κ° νλ μΌμ΄ μλ°±λ§ λͺ μ μ¬λλ€μκ² μ΄λ€ μν₯μ μ£Όλμ§ μ§μ νμΈνκ² λ©λλ€. νλ‘κ·Έλλ° λλΆμ λ§μ μ¬λλ€μ μΌμ΄ λ¨μ§ λͺ κ°μ ν€
yozm.wishket.com
1. var λμ let, constλ₯Ό μ¬μ©ν κ²
* λ²μκ° λΆλͺ ν΄μ§
* μ μ κ°μ²΄λ₯Ό μμ±νμ§ μμ
* λμΌ λ³μλͺ μ λ€μ μ μΈν λ μ€λ₯λ₯Ό νμν¨
2. μ£Όμμ λ§₯λ½μ μ€λͺ ν΄μΌ νλ€
* μ견 μ€λ³΅νμ§ μκΈ°. λ¬΄μ¨ μΌμ νλμ§κ° μλ μ νλμ§ μμ±νλΌ
* ν¨μ / λ³μ / ν΄λμ€ μ΄λ¦μΌλ‘ μ€λͺ νλ κ²μ΄ μ₯ν©ν μ£Όμλ³΄λ€ λ«λ€
* μ΅λν λ§μ΄ μμ½νκ³ λ¬Έλ¨ λ¨μλ‘ μμ±νμ§ λ§ κ²
* μ£Όμμ μμ λμ§ μμμΌ ν¨
3. ==λμ ===λ₯Ό μ¬μ©ν κ²
* ==λ μΌλ° νλ± μ°μ°μ ===λ μμ νλ± μ°μ°μ
* μΌλ° νλ± μ°μ°μλ νΌμ°μ°μκ° μ μ¬ν μ¬λΆλ§ νμΈν¨
* μμ νλ± μ°μ°μλ νΌμ°μ°μμ νμ κ³Ό κ°μ λμμ νμΈν¨
4. μ΅μ λ 체μ΄λμ μ¬μ©ν κ²
* ?λ μ΅μ λ 체μ΄λ μ°μ°μ
* ν΄λΉ κ°μ²΄μ λͺ¨λ λ νΌλ°μ€λ₯Ό νμΈνμ§ μμλ μμ±κ°μ νμΈν μ μμ
const pokemon = {
name: 'Charmander',
info: {
ability: 'Blaze'
}
}
console.log(pokemon?.info?.ability) // Blaze
console.log(pokemon.info.attack) // Error
console.log(pokemon?.info?.attack) // undefined (no error)
5. λ§€μ§ λλ²μ λ§€μ§ μ€νΈλ§μ μ¬μ©ν κ²
* λ§€μ§ λλ² / λ§€μ§ μ€νΈλ§ : μ½λμμ μ§μ μ¬μ©λλ μ«μ λλ λ¬Έμμ΄
* μμμ μ΄λ¬ν κ°μ ν λΉνλ κ²μ΄ μ’μ
6. API νΈμΆ μ€λ₯μ λν μ μ ν μ²λ¦¬
* asyn/await μμμ try/catchλ₯Ό μ¬μ©νμ¬ μ²λ¦¬ν΄μΌν¨
7. κ°μ²΄λ₯Ό λ¨μΌ λ§€κ°λ³μλ‘ μ¬μ©νμ§ λ§ κ²
* κ°μ²΄μμ μ¬λ¬ μμ±κ°μ΄ νμν ν¨μλ₯Ό μ μν λ, λ¨μΌ κ°μ²΄λ³΄λ€ μ¬λ¬ λ§€κ° λ³μλ₯Ό μ¬μ©νλ κ²μ΄ μ’μ
* ν¨μμ νμν λ§€κ°λ³μλ₯Ό μ νν λͺ μν μλ‘ μ½λλ₯Ό μ½λ κ²μ΄ μ¬μ
* ν¨μλ₯Ό ν μ€νΈνκΈ° μ½κ² λ§λ¦, μ μ§ λ³΄μλ₯Ό μ½κ² λ§λ¦, κ°λΉμ§ μ½λ ν νΉμ λΆνμν λ§€κ°λ³μ μμ±μ λ°©μ§νμ¬ μ±λ₯μ΄ ν₯μ λ¨
8. μ½μ΄λ₯Ό μ¬μ©ν κ²
* λ³μμ μ ν¨μ± κ²μ¬μ if(!!x) {...}μ κ°μ μ½μ΄λ₯Ό μ¬μ©ν κ²