본문 바로가기

TypeScript

타입의 호환성 - 함수 타입

매개변수 수가 같은 경우

할당 가능한 경우

    const sum: Sum (sumFirst: number, sumSecond: number) => {
      return sumFirst + sumSecond;
    };
    const multiply: Multiply = sum; // ok

할당 불가능한 경우

    interface Animal { animalProp: string };
    interface Dog extends Animal { dogProp: number };

    let f = (animal: Animal) => animal.animalProp;
    let g = (dog: Dog) => { doSomething(dog.dogProp) };

    f = g;

매개 변수 수가 다른 경우

할당하는 함수의 매개변수 수가 더 많은 경우 ⇒ 불가능

할당받는 함수의 매개변수 수가 더 많은 경우 ⇒ 초과 매개변수는 무시된다

'TypeScript' 카테고리의 다른 글

타입의 호환성 - 제네릭  (0) 2019.10.30
타입의 호환성 - 클래스  (0) 2019.10.30
타입의 호환성 - 객체 타입  (0) 2019.10.30
타입의 호환성 - 기본 타입  (0) 2019.10.30
인터페이스와 클래스의 관계  (0) 2019.10.30