inflearn logo
강의

講義

知識共有

タイプスクリプトのすべて

ターゲット / lib

변수들이 var로 변합니다.

解決済みの質問

528

alice

投稿した質問数 55

0

ano.ts

// 타입 주석
const a: number = Number("1");
//const b: string = 'hi ts';
const b: string = String(123);
const c: boolean = true;

// any - 다들어감 어떤 것이든.. 피하자
// number - int Long(big int ) smallint
// string - "" '' ``
// boolean - true false 만 .... 0 1 은 아님 
// object - {} any .. 쓰지마세요!! 모든 에러의 근원이 될 수 있습니다!!

// 타입 추론
let d = 1;
//d = "hi"

위와 같이 ts 파일을 작성하고

터미널에 tsc를 입력해서 js 파일로 변환하니까

ano.js

"use strict";
// 타입 주석
var a = Number("1");
//const b: string = 'hi ts';
var b = String(123);
var c = true;
// any - 다들어감 어떤 것이든.. 피하자
// number - int Long(big int ) smallint
// string - "" '' ``
// boolean - true false 만 .... 0 1 은 아님 
// object - {} any .. 쓰지마세요!! 모든 에러의 근원이 될 수 있습니다!!
// 타입 추론
var d = 1;
//d = "hi"

이렇게 변수들이 var로 변하네요.

강사님이 올려주신 깃 저장소의 코드는 이렇지 않던데 저는 왜 var로 변하는 걸까요?

 

typescript

回答 1

0

alice

자문자답 합니다. tsconfig.json 파일의
"target" 을 "ES5"에서 "ES2022" 로 변경하니
js 파일로 변환되어도 var로 변하지 않네요.

1

yongsoocho

먼저 질문주셔서 감사합니다 :)

답이 이미 나온 것 같지만 상세설명을 하자면, 타입스크립트는 다음과 같은 순서를 따릅니다.

  1. 타입스크립트 코드 작성

  2. 자바스크립트 파일로 변환 (트랜스파일이라고 합니다.)

  3. 변환된 자바스크립트 파일이 Node.js에서 실행

여기서 자바스크립트를 어떤 버전으로 변환할지가 target 옵션입니다.
자바스크립트는 크게 ES6 이전과 이후로 나뉩니다.
ES6 이전에는 var를 사용하였고 ES6부터는 let, const를 사용합니다 :)

추가설명
과거 자바스크립트는 '넷스케이프 자바스크립트'와 '마이크로소프트 자바스크립트' 2가지 버전이 있었습니다. 이를 통합하고자 출시된 것이 'ECMA Script' 입니다. 흔히 ES 라고 부르는 것입니다. 즉 자바스크립트의 표준입니다.

ES1 -> ES2 -> ES3 -> ES4 (지원 부족으로 폐기됨) -> ES5 -> ES6 ... 를 거쳐 현재 ES13 까지 출시됐고 매 버젼마다 추가기능이 생깁니다. ES6는 특히 변경사항이 매우 많이 때문에 ES6부터 ES6+(모던 자바스크립트)라고 부르기도 합니다.

보통 'ES + 버전' 으로 이름을 붙이지만 'ES + 출시년도'로 붙이기도 합니다.
예를들어 ES6는 2015년에 출시되었기 때문에 ES6 = ES2015 입니다.
수강생분께서 언급하신 ES2022는 13버전이기 때문에 ES13 = ES2022 입니다.

명시적 타입 선언(콜론 타입 선언)과 as 타입 단언 차이

0

3

1

타입 주석

0

48

1

BuilderInit 사용 이유

0

409

1

ts-node extends시 에러가 발생합니다 ㅠㅠ

0

836

1

데코레이터-2 강의 질문이 있습니다.

0

284

1

enum 질문이 있습니다.

0

330

1

색션 2, 데코레이터 개념이 아예 이해가 안됩니다.

0

539

1

변수의 타입에 클래스를 지정해준 것과 지정 안한 것 과의 차이가 어떻게 되는지 궁금해서 질문을 남깁니다.

0

369

2

섹션4 예제0 질문입니다.

0

719

2

제네릭 extends관련질문 있습니다.

0

367

1

안녕하세요 정말 좋은 강의 감사합니다

0

381

1

하나의 인터페이스와 여러 버전의 클래스에 관한 질문

0

413

1

!과 타입 단언 (보충) 질문

0

404

1

화살표 함수에서 this

0

435

1

constructor질문

0

262

1

타입 단언과 관련해서 질문드립니다.

0

651

1

extends와 implements질문 드립니다.

0

302

1

질문 드립니다.

0

375

2

as와 변수의 타입 지정 차이

0

353

1

undefined형식 에러

0

398

1

질문드립니다.

0

264

1

리터럴 타입 질문드립니다.

0

333

1

코딩 초보

0

462

1

service계층과 데이터베이스 요청 주고받을 때 Builder패턴 질문

0

1760

1