본문 바로가기
TypeScript

[TypeScript] TS와 JS+엄격모드 차이점, 공통점

by hans-j 2023. 3. 15.

자바스크립트로 코드 짜는데 ... 타입스크립트 잘못썼으니까 고치라고 에러가 엄청 떠서 참 애를 먹었다..참나... 저 좀 내버려두세요!

 

배포할 때 자바스크립트에 엄격모드를 적용하는데

이때 에러 고치면서 타입스크립트 빨리 배우고싶다는 마음이 간절했음..

 

드디어 타입스크립트를 배우고있는데 갑자기 궁금해서 찾아본..

 

자바스크립트 엄격모드와 타입스크립트의 공통점과 차이점...

 

공통점

  • 코드 작성 시 더 엄격한 문법 규칙을 적용하여 오류 발생 가능성을 줄인다.
  • 기존에는 무시되었던 몇 가지 오류들이 예외를 발생시킨다.

차이점

  • 엄격 모드는 자바스크립트에서만 사용되며, 타입스크립트에서는 타입 체크를 사용하여 더 안정적인 코드를 작성함
  • 엄격 모드는 코드 내에 use strict 구문을 추가하여 사용하며, 타입스크립트는 파일의 확장자를 .ts로 설정하여 사용함
  • 엄격 모드는 변수 할당, 함수 선언 등의 문법 규칙을 엄격하게 적용하며, 타입스크립트는 변수의 타입,
    함수의 인자 타입 등을 명시하여 타입 체크를 수행한다.
// JavaScript의 엄격 모드
'use strict';

// 8진수 표현이 불가능.
let num = 010;

console.log(num); // Uncaught SyntaxError: Octal literals are not allowed in strict mode.

// TypeScript의 타입 체크
// 8진수 표현이 불가능.
let num: number = 010;

console.log(num); // TS1035: (TS) Built-in ECMAScript feature 
//'octal literals' implicitly has type 'any' 
//because it does not have a type annotation
//and is referenced directly or indirectly in its own initializer.

또 하나 알게 된 충격적인 사실...

 

타입스크립트에도 엄격 모드가 있단다.. 얼마나 엄격할지..

GPT한테 물어봄

그렇단다...이제 사실확인 시간

https://maxoid.io/what-is-strict-mode-in-typescript-and-why-and-when-you-should-use-it/

 

What Is Strict Mode In TypeScript, Why And When You Should Use It?

There are many options and parameters that can be used in the TypeScript configuration. One of the important “groups” of options is strict options. These options provide us the ability to write the safest code. How? Because TypeScript was developed pri

maxoid.io

사실이었다..대박..(GPT는 가끔 입만 열면 거짓말만 술술 할 때가 있어서 사실확인 필수다.)