개발자

타입스크립트에서 타입 표기는 모두 다 해야하나요?

2024년 05월 28일조회 58

자바스크립트만 이용해 프로젝트를 하다가 타입스크립트를 사용하면 오류 메시지도 자세히 볼 수 있고, 나중에 규모가 커졌을 때 더 좋다고 들었습니다. 그래서 타입스크립트에 대해 공부하게 되었고 타입 명시를 하는것도 이해했습니다. 그런데 모든 변수나 함수와 같은 자료에 타입을 명시할 필요가 없다고 들었는데, 그렇다면 어디에 타입을 명시해야하는지 기준을 잘 모르겠습니다,, 다른 분들이 타입스크립트로 프로젝트한 깃 레포를 살펴봐도 잘 모르겠더라구요,, 혹시 타입스크립트를 사용하는 분들은 모든 곳에 타입 명시를 하시나요? 만약 모든 곳에 타입 명시를 하지 않는다면, 타입스크립트에서 타입 명시하는 기준이 무엇인지 궁금합니다,,!! 🤔

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.

답변 1

김인후님의 프로필 사진

타입을 굳이 다 표기할 필요는 없습니다. 개인적인 생각으론 타입추론이 되는 변수에 대해서는 굳이라는 생각을 합니다. 그리고 타입 선언은 주로 http request, response와 같은 객체에 대한 타입 선언을 사용하는 편 입니다!

olcloolzj님의 프로필 사진

olcloolzj

작성자

대학생2024년 05월 29일

답변 감사합니다 ! 다른 사람이 봤을때 추론하기 어려운 자료형 같은 곳에 붙여주면 되겠네요 감사합니다 🙂👍

김인후님의 프로필 사진

김인후

software engineer2024년 05월 29일

다른 사람도 있지만! Ts에서 자체 추론 되는 거는 안 잡아도 됩니다! 마우스 올려보면 변수나 값에 타입이 뜨면 추론되는 거에요

olcloolzj님의 프로필 사진

olcloolzj

작성자

대학생2024년 05월 29일

넵 !! 친절한 답변 감사합니다 😀✨

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2024년 05월 28일

타입스크립트에서 타입 표기를 모두 해야 하는지에 대한 질문, 아주 좋은 질문입니다. 타입스크립트에서는 모든 변수나 함수에 타입을 명시하지 않아도 됩니다. 타입스크립트는 자바스크립트의 슈퍼셋이므로 자바스크립트와 호환되고 자바스크립트 코드를 그대로 실행할 수 있습니다. 따라서 기본적으로 자바스크립트처럼 동작합니다. 그러나 타입을 명시하는 것은 코드의 이해도를 높여주고, 잠재적인 버그를 줄여줍니다. IDE(통합 개발 환경)는 타입 정보를 이용해서 개발자에게 적합한 제안을 할 수 있으며, 컴파일 시점에 오류를 포착하고 수정할 수 있습니다. 언제 어느 곳에 명시해야 하는지 전략은 프로그래머나 팀마다 다르지만, 일반적으로 다음과 같은 규칙을 따르는 것이 좋습니다: 1. 외부 라이브러리 호출, API 응답 등 TypeScript가 알 수 없는 데이터와 상호작용하는 경우: TypeScript가 유형을 추론할 수 없으므로 이러한 경우에는 명시적으로 타입을 선언하는 것이 좋습니다. 2. 변수의 초기값이 추출되지 않는 경우: 만약 변수가 선언과 동시에 초기화 되고, 그 타입이 명확하다면 TypeScript는 해당 타입을 추론할 수 있습니다. 하지만 변수가 나중에 할당된다면 TypeScript는 그것의 유형을 알 수 없으므로 타입을 명시해야 합니다. 3. 함수 매개변수와 반환 값: 함수를 작성할 때 매개변수 타입과 반환값 타입은 항상 지정해주는 것이 좋습니다. 이렇게 하면 잘못된 인자를 전달하거나 잘못된 값을 반환하는 실수를 방지할 수 있습니다. 마지막으로, TypeScript 프로젝트에서 "noImplicitAny" 옵션을 사용하면 모든 값이 명시적인 타입을 가져야 한다는 요구사항을 설정할 수 있으며, 이는 팀 내 일관성과 함께 오류 발생 가능성을 줄일 수 있는 데 도움이 됩니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!