我们知道很多时候,看到一些打包工具,或者转换ts为js的工具:
【转换前】
MyFile.ts
const num = 1;
【转换后】
转为:
MyFile.js
var num = 1;
MyFile.d.ts
declare const num = 1;
我们看到有时候是有 .d.ts 文件,内有 declare 声明语句。
请问下,
1、转为js文件的目的是什么呢?(压缩大小吗、打包成库吗?)
2、为何需要.d.ts 文件呢?是指的方便以后ts代码调用吗?如果是,也就是说,ts可以直接调用js代码是吗?
必须转成JavaScript,是因为浏览器只能执行JavaScript,不能执行TypeScript
.d.ts
文件主要用于定义 JavaScript 代码库的类型信息,目的是为方便 TypeScript 代码调用此 JavaScript 库而提供类型检查和自动补全。在 TypeScript 中,可以直接引入 JavaScript 模块,并在 TypeScript 代码中调用该模块中的函数和变量。但是,JavaScript 是弱类型语言,没有强制类型检查机制,这会引发很多潜在的类型错误。通过使用.d.ts
文件来为 JavaScript 代码库提供类型声明,TypeScript 可以在编译时进行类型检查,避免一些常见的类型错误。需要注意的是,TypeScript 可以直接调用 JavaScript 代码,并不需要进行任何转换或形式上的“继承”,因为 TypeScript 的语法基本上是 JavaScript 的超集,而且最终还是会被编译成 JavaScript 代码运行。因此,在导入 JavaScript 模块时,可以直接使用
import
语句,无需对 JavaScript 代码进行修改。