TypeScriptμ ν¨μλ JavaScriptμ²λΌ ν¨μλ₯Ό μμ±ν μ μμ§λ§, 맀κ°λ³μμ νμ κ³Ό λ°ν νμ μ μ€μ ν΄μΌ νλ€.
function λ³μλͺ (맀κ°λ³μ : 맀κ°λ³μ νμ ) : λ°νκ°μ νμ { }
function square(num: number): number{
return num*num;
}
λ§μ½ λ°μ ν¨μκ° return μ ν΄μΌλ κ²½μ°
function square(num: number): number{
num*num // error
}
returnν νμ
μ΄ λͺ
μ λμμ§λ§ returnμ νμ§ μμ μ€λ₯λ₯Ό μ‘μμ€λ€.
볡μ‘ν ν¨μμ¬μ λ°νλ¬Έμ΄ μ°ΎκΈ° νλ€κ²½μ°
ν¨μκ° νλΌλ―Έν°λ‘μ μμΈ‘νλ κ²κ³Ό λ°νλλκ±Έ λͺ
μν΄λλ©΄ μ½κ² μ μμκ³ μ€λ₯λ₯Ό μλ°©ν μ μλ€.
const doSomething = (name: string, age: number, isFunny: boolean) =>{ };
doSomething("kyj", 28 , true);
function greet(person: string = "stranger"){
return `Hi there, ${person}`
}
const colors = ["red", "orange", "yellow"];
colors.map(color => { // typeμ μ§μ νμ§ μμμ§λ§ λ¬Έλ§₯μ colors κ°λ€μ΄ stringμ΄λ κ±Έ μΈμ§νμ¬ colorμ typeμ stringμ΄λΌ μ§μ νλ€.
return color.toUpperCase();
})
function print(msg: string): void {
console.log(msg);
}
ν¨μμ μ무κ²λ λ°ννμ§ μλλ€λκ±Έ λͺ μνκΈ°μν΄ μ¬μ©λλ€.
ν¨μμ λ°ν νμ μΌλ‘ μ°μ΄κ±°λ μ λ λ°νλμ§ μμμΌ ν ν¨μλ₯Ό μ΄λ Έν μ΄μ μ²λ¦¬ν λ μ°μΈλ€.
function test(input:string): never{
console.log(input);
return input ; // error return κ°μ΄ μκΈ° λλ¬Έμ error
}
voidλ μλ°ν κ°μ΄λ€. voidλ₯Ό λ°νν ν¨μκ³ undefined μνλ‘ λ°νλλ€.
neverλ μ λ λ°νν κ°μ΄ μμΌλ©΄ μλλ λ―Έλ¬ν μ°¨μ΄κ° μλ€.