개발자

자바스크립트와 타입스크립의 차이

2023년 05월 08일조회 2,697

자바스크립트와 타입스크립트의 차이점은 뭔가요?? 타입스크립트는 타입을 특정해준다는거 외에 잘 모르겠어서요!

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

답변 7

인기 답변

강병진님의 프로필 사진

타입 지정뿐 아니라 자바스크립트는 interpreted language이고 타입스크립트는 compiled language라는 점에서 큰 차이가 있습니다. 잘 설명된 블로그 글을 전달드립니다 https://choseongho93.tistory.com/m/319

인기 답변

강동희님의 프로필 사진

타입스크립트는 자바스크립트에 정적 타입을 얹은 슈퍼셋 언어입니다. 기본적으로 자바스크립트는 동적언어인데, 동적 언어는 런타임 시 타입이 정해져 개발에 있어서 여러 어려움이 있습니다. 타입스크립트를 활용하면 타입에 의한 에러를 런타임시가 아닌 컴파일 시 체크할 수 있고, 타입 지정을 통해 개발 경험을 상당수준 올릴 수 있습니다. 타입스크립트로 코드를 작성하고 컴파일 하면 컴파일 성공 시 자바스크립트로 변환됩니다. 자세한 내용은 타입스크립트 공식 홈페이지를 둘러보시는걸 추천해드립니다. https://www.typescriptlang.org/

김형준님의 프로필 사진

저는 타입스크립트를 이렇게 정리했어요. ‘자바스크립트의 Superset 언어, 자바스크립트에 type 기능이 강화된 언어’ Superset 언어이기 때문에 JS에서 가능한 기능은 TS에서 가능합니다. TS는 JS로 토렌스파일 되어 실행되기 때문에 이러한 특징을 가지는 게 당연하더라고요. Type, 이 강화된 것 이외에 제가 사용하면서 가장 크게 체감한 차이는 JS 표준보다 활용 가능한 기능(문법)이 더 많다 입니다. JS 표준으로 추가되기 전인 기능이 가끔 TS에 먼저 적용되어 있는걸. 본적이 있어요. 그래서 저는 JS보다는 TS로 작업하는 게 더 효율이 높다고 느껴요. (어떤 언어가 더 익숙한지의 영역일 수 있지만) 하지만 TS를 사용하기 위해서는 추가적인 환경 설정이 필요하기 때문에 간단한 프로젝트에서 빠르게 사용하기에 좋다는 장점이 JS에 있습니다.

김동민님의 프로필 사진

저는 데이터 만지고 할때 interface정의 해놓으면 자동완성되는게 넘 좋더라구요 ^^ 뿐만아니라 여러가지 클래스도 사용할수있어서 좋았습니다!

김태현님의 프로필 사진

말 그대로 타입을 지정할 수 있다는 것 말고는 없습니다. 다만 타입을 지정하는 방식이 많으므로 파생되는 기능이 많은 거죠.

김철수님의 프로필 사진

혼자서 할땐 필요성을 못느낄수도 있으나 세명이상 진행하는 규모있는 프로젝트는 자바스크립트로는 힘들구나 느낌이 오실겁니다.

커리어리 AI 봇님의 프로필 사진

자바스크립트와 타입스크립트의 주요 차이점은 타입스크립트가 정적 타입 시스템을 도입한다는 점입니다. 이는 코드가 실행되기 전에 에러를 찾아내는 데 도움을 주고, 코드 편집기와 IDE에서 더 나은 도구 지원을 제공합니다. 자세히 살펴보면 다음과 같은 차이점들이 있습니다: 1. 정적 타입 검사: 타입스크립트는 컴파일 시점에 정적 타입 검사를 수행합니다. 즉, 변수, 함수 매개변수, 객체 속성 등의 타입을 미리 지정하고, 이에 맞지 않는 값이 할당되거나 반환되면 에러를 발생시킵니다. 이를 통해 런타임 에러를 줄이고, 코드의 가독성과 유지 보수성을 향상시킬 수 있습니다. 2. 클래스와 인터페이스: 자바스크립트의 프로토타입 기반 상속에 비해, 타입스크립트는 클래스 기반 객체 지향 프로그래밍을 지원하며, 인터페이스를 통해 더 강력한 객체 지향 설계를 할 수 있습니다. 3. 제네릭: 타입스크립트는 제네릭을 지원합니다. 제네릭을 사용하면, 다양한 타입에 작동하는 컴포넌트를 만들 수 있으며, 컴포넌트 간 타입 호환성을 보장할 수 있습니다. 4. 고급 타입: 타입스크립트는 유니온 타입, 인터섹션 타입, 리터럴 타입, 튜플 등과 같은 고급 타입을 지원합니다. 이를 통해 더욱 강력하고 정확한 타입 표현이 가능합니다. 5. 도구 지원: 타입스크립트는 코드 편집기와 IDE에서 더욱 향상된 도구 지원을 제공합니다. 예를 들어, 코드 자동 완성, 리팩토링 도구, 타입 정보 조회 등의 기능을 제공합니다. 6. 다운레벨 트랜스파일링: 타입스크립트는 최신 자바스크립트 문법을 사용하면서도, 이전 버전의 자바스크립트로 컴파일하여 브라우저 호환성을 보장할 수 있습니다.

커리어리 AI 봇의 답변을 평가해 주세요!

장상현님의 프로필 사진

장상현

무소속2023년 06월 08일

타입이 추가 된다는게 무슨 의미인지 잘 모르기 때문에 와닿지 않을 수 있어요 (저도 마찬가지고요) 타입이 지원된다는 것은 타입 시스템을 기반으로 소프트웨어를 안정적인 코드 위에서 작동 할 수 있게 만들어줍니다. 어떻게 코드가 안정적이라는 것을 확정 할 수 있을까요? 그것은 범주론이라 불리는 수학적 이론을 바탕으로 타입 시스템이 만들어지기 때문입니다. 더 자세하게 알고 싶으시다면 Haskell 공부 하는 것을 추천 드립니다.

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

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

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

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