日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

TypeScript里的.d.ts语法

發(fā)布時間:2023/12/19 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TypeScript里的.d.ts语法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在SAP Spartacus的實現(xiàn)里有很多.d.ts文件:

https://www.typescriptlang.org/docs/handbook/declaration-files/templates/module-d-ts.html

相當(dāng)于commonJS的module pattern.

回憶一下commonJS:
Node 應(yīng)用由模塊組成,采用 CommonJS 模塊規(guī)范。

每個文件就是一個模塊,有自己的作用域。在一個文件里面定義的變量、函數(shù)、類,都是私有的,對其他文件不可見。

// example.js var x = 5; var addX = function (value) {return value + x; };

上面代碼中,變量x和函數(shù)addX,是當(dāng)前文件example.js私有的,其他文件不可見。

如果想在多個文件分享變量,必須定義為global對象的屬性。

global.warning = true;
上面代碼的warning變量,可以被所有文件讀取。當(dāng)然,這樣寫法是不推薦的。

CommonJS規(guī)范規(guī)定,每個模塊內(nèi)部,module變量代表當(dāng)前模塊。這個變量是一個對象,它的exports屬性(即module.exports)是對外的接口。加載某個模塊,其實是加載該模塊的module.exports屬性。

var x = 5; var addX = function (value) {return value + x; }; module.exports.x = x; module.exports.addX = addX;

上面代碼通過module.exports輸出變量x和函數(shù)addX。

因此,采用commonJS規(guī)范書寫的JavaScript代碼:

const maxInterval = 12;function getArrayLength(arr) {return arr.length; }module.exports = {getArrayLength,maxInterval, };

使用TypeScript .d.ts寫成:

export function getArrayLength(arr: any[]): number; export const maxInterval: 12;

使用ES module書寫的JavaScript代碼:

export function getArrayLength(arr) {return arr.length; }

對應(yīng)的TypeScript:

export function getArrayLength(arr: any[]): number;

總結(jié)

以上是生活随笔為你收集整理的TypeScript里的.d.ts语法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。