문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판이전 판다음 판 | 이전 판 | ||
| typescript:function [2019/07/28 05:05] – [Overloads] taekgu | typescript:function [2025/04/15 10:05] (현재) – 바깥 편집 127.0.0.1 | ||
|---|---|---|---|
| 줄 67: | 줄 67: | ||
| let myAdd = function(x: number, y: number): number { return x + y; }; | let myAdd = function(x: number, y: number): number { return x + y; }; | ||
| - | // The parameters ' | + | // The parameters ' |
| let myAdd: (baseValue: number, increment: number) => number = | let myAdd: (baseValue: number, increment: number) => number = | ||
| function(x, y) { return x + y; }; | function(x, y) { return x + y; }; | ||
| 줄 331: | 줄 331: | ||
| pickCard(x) 함수는 모든 객체가 오버로드리스트의 일부가 아니므로 객체를 취하는 오버로드와 숫자를 취하는 오버로드의 두 가지 오버로드 만 있습니다. 다른 매개 변수 유형으로 pickCard를 호출하면 오류가 발생합니다. | pickCard(x) 함수는 모든 객체가 오버로드리스트의 일부가 아니므로 객체를 취하는 오버로드와 숫자를 취하는 오버로드의 두 가지 오버로드 만 있습니다. 다른 매개 변수 유형으로 pickCard를 호출하면 오류가 발생합니다. | ||
| + | |||
| + | ==== 예제 ==== | ||
| + | <code javascript> | ||
| + | function add(a: string, b: string): string; | ||
| + | function add(a: number, b: number): string; | ||
| + | function add(a, b): any { | ||
| + | return a + b; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | 함수명과 매개변수의 개수는 같지만 타입을 다른 경우. | ||
| + | 다른 언어의 오버로드는 함수명만 동일하면 되지만 TypeScript의 오버로딩은 함수명과 매개변수의 갯수가 같아야 한다. | ||