📜  如何从任何 .js 文件生成 TypeScript 定义文件?

📅  最后修改于: 2022-05-13 01:56:18.185000             🧑  作者: Mango

如何从任何 .js 文件生成 TypeScript 定义文件?

TypeScript 定义文件或类型声明文件是具有.d.ts文件名的任何 TypeScript 文件 延期。这些文件仅用于保存该特定脚本的类型声明,而不是源代码本身。这意味着它们不是编译过程的一部分。在本文中,我们将了解如何从任何.js文件或任何普通 TypeScript 文件生成 TypeScript 定义文件。

我们在终端中输入以下命令以从.js文件生成任何 TypeScript 定义文件:

句法:

tsc --declaration nameOfTypeScriptFile.ts

解释:

  • tsc:代表TypeScript编译器,用于调用编译器。
  • --declaration:它是一个命令行界面 (CLI) 命令,它从 TypeScript (.ts) 文件中发出 TypeScript 定义文件。
  • nameOfTypeScriptFile.ts:要从中生成 TypeScript 定义文件的 TypeScript 文件。

注意:要将 TypeScript 文件编译为 JavaScript 文件并随后执行它,我们使用以下命令:

tsc nameOfTypeScriptFile.ts
node convertedJavaScriptFile.js

示例 1:以下示例有一个具有两个键值对的对象字面量量,第一个属性是name ,其对应的值为“GeeksforGeeks” ,第二个属性是建立的,其值为2009

script.ts:生成的输出 TypeScript 文件

script.ts
const object = {
    name: "GeeksforGeeks",
    founded: 2009,
};
  
console.log(
    `The organisation is ${object.name} and 
        it was founded in ${object.founded}`
);


script.js
var object = {
    name: "GeeksforGeeks",
    founded: 2009
};
console.log("The organisation is ".concat(object.name, 
    " and it was founded in ").concat(object.founded));


Javascript
declare const object: {
    name: string;
    founded: number;
};


index.ts
function addTwoNumbers(a: number, b: number) {
    return a + b;
}
  
const n1 = 2,
    n2 = 9;
console.log(`The sum of ${n1} and ${n2} 
    is ${addTwoNumbers(n1, n2)}`);


index.js
function addTwoNumbers(a, b) {
    return a + b;
}
var n1 = 2, n2 = 9;
console.log("The sum of ".concat(n1, " and ")
    .concat(n2, " is ").concat(addTwoNumbers(n1, n2)));


Javascript
declare function addTwoNumbers(a: number, b: number): number;
declare const n1 = 2, n2 = 9;


script.js:生成的输出 JavaScript 文件

脚本.js

var object = {
    name: "GeeksforGeeks",
    founded: 2009
};
console.log("The organisation is ".concat(object.name, 
    " and it was founded in ").concat(object.founded));
  • script.d.ts:这是生成的 TypeScript 定义文件

Javascript

declare const object: {
    name: string;
    founded: number;
};

输出:

示例 2:以下示例有一个用户定义的函数addTwoNumbers(a,b ),它计算两个数字的和并返回结果。

索引.ts

function addTwoNumbers(a: number, b: number) {
    return a + b;
}
  
const n1 = 2,
    n2 = 9;
console.log(`The sum of ${n1} and ${n2} 
    is ${addTwoNumbers(n1, n2)}`);

index.js

function addTwoNumbers(a, b) {
    return a + b;
}
var n1 = 2, n2 = 9;
console.log("The sum of ".concat(n1, " and ")
    .concat(n2, " is ").concat(addTwoNumbers(n1, n2)));
  • 索引.d.ts

Javascript

declare function addTwoNumbers(a: number, b: number): number;
declare const n1 = 2, n2 = 9;

输出: