inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

타입스크립트 시작하기

타입 가드

시간 3:40의 타입 가드에 대한 설명

227

김범준

작성한 질문수 6

1

if (value instanceof Person ) {

    console.log(value.age)

}

이 코드가 에러가 발생하지 않는 이유가,

typescript가 if 문을 스스로 해석하여 value가 Person이라는 것을 알기 때문인가요?

as 타입가드를 추가하지 않았는데도 value.age 는 괜찮고, value.price는 에러를 일으키는 이유가 뭐죠?

typescript

답변 1

1

이재승

안녕하세요
말씀하신대로 타입스크립트는 if 문 조건을 보고 value가 Person이라는 것을 압니다
그래서 value.price 는 에러가 납니다
타입스크립트가 그만큼 똑똑하다고 생각할 수 있습니다

lodash 가 안될때

0

128

1

에궁 처음부터 막히네요...ㅜㅜ

0

113

1

[함수타입2] 함수 this에 대한 타입 부분, 제가 제대로 이해했을까요?

0

300

1

객체 할당 관련 질문 있습니다.

0

358

1

퀴즈 관련 질문이 있습니다.

0

383

1

공변성 강의

0

276

2

시간 4:31 인터페이스 타입가드에 대해

0

257

1

리턴값이 연산인 제네릭 에러 해결

0

468

2

code runner 사용 시 output이 깨지는 문제

0

2487

2

2: 38

0

211

1

5:55 내용에 대하여 질문드립니다.

0

466

2

extends에 관하여

0

316

1

return 타입

0

199

1

/bin/sh: node_modules/.bin/ts-node: No such file or directory 오류

0

394

1

Person 과 Product

0

221

1

tsc 기본이 es3

0

338

1

[#다시질문] Person과 Product 관계

0

187

1

타입스크립트 부분실행 질문드립니다

0

733

1

함수 타입2 에서 1:53

0

355

2

1:19 에서 interface String

1

298

2

안녕하세영 정리

0

186

1

this 질문

0

245

1

function add

0

200

2

타입스크립트 사용하는 이유 : 높은 생산성

0

222

2