-
2023 - 07 - 20 타입스크립트 .d.ts 파일, types, JSDocToday I Learned/TIL 07 2023. 7. 26. 10:27
오늘 배운것. 타입스크립트 TypeScript => .d.ts
.d.ts 파일로 TypeScript 컴파일러는 다음과같은 사항을 알 수 있다.
1. 외부 라이브러리 함수 타입 정보
2. 외부 라이브러리 클래스 타입 정보
3. 외부 라이브러리 객체 타입 정보
4. 외부 라이브러리의 타입 추론 ( 타입이 명시되지 않았을 때, 컴파일러가 알아서 해당 타입에 대한 추론을 함)
JavaScript 라이브러리를 TypeScript에서 사용하는법.
1. Node.js 프로젝트 생성 npm init -y 2. tsconfig.json을 생성하여 TypeScript 프로젝트로 변환 tsc --init 3. tsconfig.json을 열어서 아래의 옵션을 주석 해제하여 true로 설정 "allowJs": true // TypeScript 프로젝트에 JavaScript 파일 허용 여부 "checkJs": true // JavaScript 파일 타입 체크 여부 4. TypeScript에서 사용하고 싶은 커스텀 JavaScript 라이브러리(test.js)를 만듦 아래의 주석문은 JSDoc라고 하는데, 이는 API의 시그니처 (인자, 리턴타입)을 설명하는 HTML 문서생성기이다. /** * @param {number} a * @param {number} b * @returns {number} */ export function add(a, b) { // export를 넣지 않으면 import 할 수 없는 것 아시죠? return a + b; } 5. JSDoc으로 타입 힌트가 제공된 test.js의 .d.ts 파일 생성 npx tsc test.js --declaration --allowJs --emitDeclarationOnly --outDir types 6. types/test.d.ts 파일을 확인하면 다음과 같이 생성이 되어 있음. /** * @param {number} a * @param {number} b * @returns {number} */ export function add(a: number, b: number): number; 7. test.js 파일을 참조할 foo.ts 파일을 새로 만듦 import { add } from "./test"; console.log(add(1, 2)); 8. foo.ts 파일 실행. 실행시 3이라는 숫자가 뜨며, 정상적으로 실행됨 npx ts-node foo.ts
'Today I Learned > TIL 07' 카테고리의 다른 글
2023 - 07 - 22 ES6 소프트웨어 아키텍쳐 (0) 2023.07.27 2023 - 07 - 21 타입스크립트 프로젝트 : 성적표 프로그램 (0) 2023.07.27 2023 - 07 - 19 컴파일러 Complier, tsc, 타입스크립트 컴파일러, tsconfig.json, 컴파일러 옵션 (0) 2023.07.25 2023 - 07 - 18 타입스크립트 TypeScript의 장점, 자바스크립트의 약점 보완, 객체지향 프로그래밍 OOP (0) 2023.07.25 2023 - 07 - 17 AXIOS (0) 2023.07.20