Typescript 대 Javascript – 차이점 이해

내가 받는 자주 묻는 질문 중 하나는 JavaScript와 Typescript의 차이점이 무엇입니까?

알아 보자…

코딩을 시작할 때부터 JavaScript(JS)는 모든 프론트 엔드 프로젝트의 일부였을 것입니다. JS에 약간 익숙하다면 TypeScript를 JS와 애플리케이션을 더 깔끔하고 타이핑하게 만드는 몇 가지 추가 기능으로 생각하십시오. typeScript는 JS 개발을 보다 효율적으로 만들고 컴파일 오류를 조기에 포착하기 위해 Microsoft에서 오픈 소스 프로젝트로 개발했습니다.

이 기사에서는 JavaScript와 TypeScript의 몇 가지 중요한 기능과 두 스크립팅 언어의 차이점에 대해 설명합니다.

자바스크립트란?

JavaScript는 클라이언트 측 스크립팅에 사용됩니다. HTML 페이지에서 스크립트를 생성하거나 확장자가 .js인 파일을 생성하여 HTML 파일에 포함할 수 있습니다. JavaScript를 볼 수 있는 일반적인 실제 예는 사용자 이름/비밀번호가 올바르지 않을 때 오류가 표시되는 로그인 페이지 유효성 검사입니다.

간단한 JS 코드를 작성하고 브라우저에서 실행해 보겠습니다.

example.html 파일을 만들고 다음 코드를 추가합니다.

<script>

feeling = 'happy';

feeling = 23;

</script>

이 간단한 코드는 변수를 선언하고 거기에 happy(문자열) 값을 할당합니다. 동일한 변수에 다른 유형(숫자)의 값을 할당할 수 있습니다. JavaScript는 이에 대해 불평하지 않으며 문제 없이 모든 브라우저에서 코드를 실행할 수 있습니다. 이제 사용자로부터 느낌의 가치를 얻습니다.

HTML은 다음과 같습니다.

<input type = "textbox" id = "howyoufeel">

스크립트는 다음과 같습니다.

feeling = document.getElementById("howyoufeel").value;

스크립트에서 명시적인 검사를 하지 않는 한 JS는 사용자의 값을 수락하고 전달합니다. 따라서 감정 변수에는 234, @.#$% 등과 같은 것을 넣을 수 있습니다.

자바스크립트의 특징

위로부터 JavaScript의 다음 기능을 관찰할 수 있습니다.

  • 약한 형식의 스크립팅 언어
  • 클라이언트 측 및 서버 측(node.js 포함) 스크립팅에 사용
  • 유연하고 역동적
  • 모든 주요 브라우저에서 지원
  • 가볍고 해석
  친구와 함께 Plex를 시청하는 방법

JavaScript를 마스터하는 데 관심이 있다면 이것을 확인하십시오. 유데미 코스.

타입스크립트란?

실제 응용 프로그램에는 많은 유효성 검사와 동적 검사가 있습니다. 이러한 응용 프로그램의 경우 JavaScript 코드는 주로 유형 검사가 없기 때문에 어느 시점에서 테스트하기 어려워집니다. 사용자로부터 가치를 얻는 동안 처음부터 올바르게 얻는 것이 중요합니다. 이것이 TypeScript가 등장하는 곳입니다.

TypeScript는 강력한 유형이며 변수 유형을 정의하지 않으면 불평하는 컴파일러가 있습니다.

JavaScript와 TypeScript는 모두 스크립팅 언어에 대한 ECMAScript 사양을 따릅니다. Typescript는 모든 JavaScript 코드를 실행할 수 있고 모든 라이브러리를 지원합니다. 이것이 JavaScript의 상위 집합이라고 불리는 이유입니다.

타입스크립트 설치

TypeScript에서 이전 코드를 실행하려면 npm 패키지를 사용하여 TypeScript 컴파일러를 설치해야 합니다(노드 js가 있는 경우).

npm install -g typescript

또는 공식에서 직접 다운로드 마이크로소프트 다운로드 페이지. 당신은 또한 사용할 수 있습니다 TS 놀이터 코드가 ts에서 js로 어떻게 트랜스 컴파일되는지 확인합니다.

이 작업이 완료되면 tsconfig.json에서 프로젝트 설정을 구성하고 IDE 또는 텍스트 편집기를 사용하여 TypeScript 코드를 작성하고 .ts로 저장할 수 있습니다.

변수 유형을 정의하지 않으면 여전히 벗어날 수 있으며 TypeScript는 데이터 유형을 유추할 수 있습니다. 그러나 컴파일하는 동안 처음 사용된 유형(이 경우 문자열) 이외의 다른 것을 제공하면 ‘느낌’ 오류가 발생합니다.

유지 관리 용이성과 사용 용이성을 위해 코드에 유형 주석이 있는 것은 항상 깔끔합니다.

var feeling: string = “happy”;

그게 아니야!

TypeScript는 개발자의 삶을 더 쉽게 만들어주는 다른 많은 기능을 제공합니다.

TypeScript의 기능

Typescript에는 풍부한 기능 세트가 있으며 모든 릴리스에는 이전보다 쉽게 ​​개발할 수 있는 새로운 기능이 제공됩니다. 예를 들어 새 릴리스(4.0)에서는 몇 가지 추가 기능 가변 튜플 유형, 사용자 정의 JSX 팩토리, 생성자의 클래스 속성 추론 등이 있습니다. TypeScript의 몇 가지 일반적인 기능은 다음과 같습니다.

  • 인터페이스, 상속, 클래스와 같은 객체 지향 프로그래밍 개념을 지원합니다. 제네릭
  • 오류 조기 감지
  • 구문 검사 및 제안이 포함된 IDE 지원
  • 입력할 때 디버그하기 쉽습니다.
  • JavaScript로 트랜스컴파일
  • 서버 측 및 클라이언트 측 애플리케이션 모두에 사용
  • 플랫폼 간 및 브라우저 간 지원
  • 모든 JS 라이브러리 및 확장 지원
  도메인 이름을 저렴하게 구입할 수 있는 곳은 어디인가요?

TypeScript가 필요한 이유는 무엇입니까? (JavaScript에 비해 TypeScript의 장점)

Microsoft는 2012년에 공개하기 전에 내부 프로젝트를 위해 2년 동안 TypeScript를 개발하고 사용했습니다. 프로덕션 수준의 엔터프라이즈 응용 프로그램에 대한 코드를 테스트하기가 더 쉽기 때문에 형식이 지정된 JavaScript를 만들었습니다. 동적 입력 기능을 계속 사용할 수 있지만 실제로 필요할 때 변수를 입력할 수도 있습니다.

아래 코드를 고려하십시오.

var mynum  = //get from user;

addten(number){

return number + 10;

}

결과는 항상 숫자일 것으로 예상됩니다. 그러나 사용자가 “양”을 주면 어떻게 될까요? 출력은 sheep10이 됩니다. 이상적으로는 사용자에게 이 작업이 불가능하다고 알려야 합니다!

또한 사용 가능한 유형 정보가 있으면 텍스트 편집기와 IDE를 사용하여 런타임 오류를 저장하고 저장하는 것이 더 쉬워집니다. 또한 나중에 코드를 리팩토링하는 것이 더 쉽습니다.

자바스크립트가 필요하지 않다는 뜻인가요? (JavaScript에 비해 TypeScript의 단점)

TypeScript는 JavaScript의 확장으로 생각할 수 있지만 확실히 대체할 수는 없습니다.

더 작은 코드 덩어리의 경우 TypeScript는 오버헤드가 될 수 있습니다. 설치, 컴파일, 트랜스 컴파일이 중복됩니다. JavaScript를 사용하면 HTML로 스크립트를 입력하기만 하면 됩니다. 또한 변경할 때마다 브라우저를 새로 고칠 수 있으면 코드를 디버그하기가 더 쉽습니다.

일대일 비교

이제 TypeScript와 JavaScript의 기능과 장점을 이해했으므로 더 많은 비교를 살펴보겠습니다.

타입스크립트
자바스크립트
컴파일 오류를 초기에 포착하는 형식화된 언어
런타임 중에 오류를 찾을 수 있습니다.
코드 유지 관리 및 가독성을 향상시켜 대규모 프로젝트에 적합
코드가 추가될수록 테스트 및 디버그가 어려워지므로 JS는 소규모 프로젝트에 적합합니다.
JS의 상위 집합, 즉 객체 지향, 유형 검사 등과 같은 기능
동적 웹 콘텐츠 생성을 지원하는 스크립팅 언어
컴파일러 설치 및 구성 설정 필요
설치가 필요 없습니다. JS 코드는 태그 안에 무언가를 입력하고 HTML로 저장하면 결과가 표시됩니다! 그런 다음 이를 기반으로 더 동적인 콘텐츠를 만들 수 있습니다.

또한 대규모 응용 프로그램을 작업할 때 JavaScript 지식이 있으면 TypeScript로 쉽게 전환하는 데 도움이 됩니다.

그러나 경력 및 급여 측면에서 TypeScript 개발자, JS 및 TS 프로젝트 모두에 대해 더 유연하고 편안하게 사용할 수 있으므로 시장에서 확실히 더 나은 자산입니다. 일반적으로 TypeScript 개발자는 $110k-$147k 사이의 급여를 받는 반면 JS 개발자는 연간 $63k-$118k를 받습니다.