[TS] ⭐함수 타입의 호환성

짱효·2024년 1월 29일
0

📖 TypeScript

목록 보기
19/20
post-thumbnail

특정 함수 타입을 다른 함수 타입으로 취급해도 괜찮은 가를 판단
1. 반환값의 타입이 호환되는가
2. 매개변수의 타입이 호환되는가

기준1/ 반환값이 호환되는가?


number에 number 리터럴로 호환 불가능

다운캐스팅이 되면 안됨.

  • 업케스팅은 가능
type A = () => number;
type B = () => 10;

let a: A = () => 10;
let b: B = () => 10;

a = b
(큰개념) = (작은 개념)    //가능
b = a
(작은 개념) = (큰개념)   //불가능




오류 발생이유



함수타입은 매개변수 기준으로 호환성을 확인함.


❌함수 호환은 업케스팅이 불가능하다.


⭕함수 호환은 다운캐스팅이 가능하다.

2-2 매개변수의 개수가 다를 때




할당하려는 함수가 매개변수가 더 많아야한다.

profile
✨🌏확장해 나가는 프론트엔드 개발자입니다✏️

0개의 댓글