μ§λ
1. νμ μ€ν¬λ¦½νΈ κ°λ‘ (5/5)
- νμ μ€ν¬λ¦½νΈ μ»΄νμΌλ¬ μ΅μ μ€μ
2. νμ μ€ν¬λ¦½νΈ κΈ°λ³Έ (2/8)
- κΈ°λ³Έ νμ μ΄λ
- μμ νμ κ³Ό 리ν°λ΄ νμ
μμ½
number νμ μΌλ‘ μ μν λ³μμλ number νμ μ μ μΈν κ°μ ν λΉν μ μμΌλ©°, number νμ μ κ°μ΄ μ¬μ©ν μ μλ toUpperCase λ±μ λ©μλλ μ¬μ©ν μ μλ€.
// number
let num1:number = 123;
let num2:number = -123;
let num3: number = 0.123;
let num4: number = -0.123;
let num5: number = Infinity;
let num6: number = -Infinity;
let num7: number = NaN;
λ³μμ μ΄λ¦ λ€μ μ½λ‘ (:)κ³Ό ν¨κ» λ³μμ νμ μ μ μνλ μ΄λ° λ¬Έλ²μ ‘νμ μ£Όμ’ λλ ‘νμ μ΄λ Έν μ΄μ ’μ΄λΌκ³ λΆλ₯Έλ€.
string νμ μ λ¨μν μλ°μ΄ν λ¬Έμμ΄ λΏλ§ μλλΌ μμ λ°μ΄ν, λ°±ν±, ν νλ¦Ώ 리ν°λ΄λ‘ λ§λ λͺ¨λ λ¬Έμμ΄μ ν¬ν¨νλ€.
// string
let str1:string = "hello";
let str2: string = `hello`;
let str3: string = 'hello';
let str4: string = `hello ${num1}`
boolean νμ μ true νΉμ falseλ₯Ό κ°μ§λ νμ μ΄λ€.
// null
let bool:boolean = true;
null νμ μ nullλ§ ν¬ν¨νλ νμ μ΄λ€.
// null
let null1:null = null;
undefined νμ λ undefinedλ§ ν¬ν¨νλ νμ μ΄λ€.
// undefined
let unde1: undefined = undefined;
리ν°λ΄νμ μ λ¨ νλμ κ°λ§ ν¬ν¨νλ νμ μ΄λ€. κ·Έ κ° μ΄μΈμ κ°μ ν λΉμ΄ λΆκ°νλ€.
// 리ν°λ΄ = κ°
let numA:10 = 10;
let strA: "hello" = "hello";
let boolA:true = true;
κ³Όμ
Q. μ μ νμ μμ€ν κ³Ό λμ νμ μμ€ν μ λ¨μ λ€μ 보μνκ³ μ₯μ λ€μ κ·Έλλ‘ κ°μ Έμ¨ TypeScriptμ νμ μμ€ν μ?
β‘οΈ μ μ§μ νμ μμ€ν (Gradual type System)
Q. TypeScriptμ νμ μμ€ν μ΄ κ°λ νΉμ§μλ μ΄λ€ μ μ΄ μμκΉμ? (λ°λ‘ λ± λ μ€λ₯΄λ νκ°μ§ νΉμ§)
β‘οΈ μλ°μ€ν¬λ¦½νΈμ κ²½μ° μΈν°νλ¦¬ν° μΈμ΄λ‘ λ°νμ λ¨κ³μμ μ€λ₯κ° λ°κ²¬μ΄ λλλ°μ λ°ν΄ νμ μ€ν¬λ¦½νΈ(μ»΄νμΌ μΈμ΄)λ μ»΄νμΌ λ¨κ³μμ νμ μ κ²μ¬νκΈ° λλ¬Έμ μ¬μ μ μ€λ₯ λ°κ²¬μ΄ κ°λ₯νλ€
Q. TypeScriptλ₯Ό μ»΄νμΌ νλ©΄ κ·Έ κ²°κ³Όλ‘ λ¬΄μμ΄ μμ±λλμ?
(ννΈ! TypeScriptλ λ€λ₯Έ μΈμ΄λ€κ³Όλ λ¬λ¦¬ μ»΄νμΌ κ²°κ³Ό ByteCodeκ° μμ±λμ§ μμμ)
β‘οΈ typescript => ast => type checking => javascript
Q. νμ μ€ν¬λ¦½νΈλ₯Ό μ¬μ©ν λ tsconfig.json νμΌμ μ¬μ©ν΄μ νμ κ²μ¬λ₯Ό λ§€μ° μ격νκ² νλ €λ©΄ μ΄λ€ μ΅μ μ μ΄λ€ κ°μΌλ‘ μ€μ ν΄μΌ ν κΉ?
β‘οΈ
{
"compilerOptions": { "strict" : true }
}
Q. μλ μ½λμ²λΌ number νμ μ λ³μμ null κ°μ ν λΉνλ €κ³ νλ€.
let numA: number = null; // β μ€λ₯ λ°μ!
μ΄ μ½λλ μ격ν νμ κ²μ¬κ° νμ±ν λμ΄ μμ λμλ μ€λ₯λ‘ νλ¨λλλ°, λ§μ½ μ μ½λλ₯Ό μ€λ₯κ° μλ κ²μΌλ‘ νλ¨νκ² νλ €λ©΄ μ΄λ€ μ΅μ μ μ΄λ€ κ°μΌλ‘ μ€μ ν΄μΌ ν κΉ?
β‘οΈ
{
"compilerOptions": { "strictNullChecks" : false }
}