728x90
type calculateStr = "add" | "substract" | "multiply" | "divide" | "remainder";
function calculate(calStr: calculateStr, num1: number, num2: number) {
if (calStr == "add") {
return num1 + num2;
}
if (calStr == "substract") {
return num1 - num2;
}
if (calStr == "multiply") {
return num1 * num2;
}
if (calStr == "divide") {
return num1 / num2;
}
if (calStr == "remainder") {
return num1 % num2;
}
throw new Error("unknown command");
}
console.log(calculate("add", 1, 3)); // 4
console.log(calculate("substract", 3, 1)); // 2
console.log(calculate("multiply", 4, 2)); // 8
console.log(calculate("divide", 4, 2)); // 2
console.log(calculate("remainder", 5, 2)); // 1
728x90
'TypeScript > ํ์ ์คํฌ๋ฆฝํธ TypeScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ์ ์คํฌ๋ฆฝํธ ๋ก๋ฉ ์ํ ํ์ ์์ (0) | 2022.04.17 |
---|---|
ํ์ ์คํฌ๋ฆฝํธ ์ขํ ์ด๋ ์์ (0) | 2022.04.17 |
Union๊ณผ ๋ ๋ค๋ฅธ Intersection ํ์ (0) | 2022.04.15 |
ํ์ ํ์ ! Discriminated Union (0) | 2022.04.15 |
ํ์ ์คํฌ๋ฆฝํธ 1์ฅ ์ฐ์ต๋ฌธ์ | ํ์ ์คํฌ๋ฆฝํธ์ ์ถ๋ก (0) | 2022.04.15 |