타입 인터페이스 A, B를 정의하고 사용중인데
A는 { a: string, b: string }
B는 { a: string }
함수 내부에서 인자에 b가 있냐 없냐에 따라 A인지 B인지 체크하는 조건문을 만들었는데
function test(arg: A | B) {
...
if(arg.b) {
// type error
}
}
이렇게 작성하면 B 안에 b가 없다고 에러가 뜨더라구
뭔가 B에 b가 없는걸 체크 해주면 된다 라고 알고있었는데 어떻게 해야 할까?
타입XX 같은 관련 용어 있었던거 같은데 기억이 안나네
type guard 검색하면 됨 - dc App
function isXXX(obj: unknown) : obj is XXX {} - dc App
고마워
타입가드. 근데 A는 intersection으로 안만듦?
땡큐 intersection은 뭔지 잘 몰라서 검색해봐야겠음