最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

TypeScript 高級語法——函數(shù)重載

2023-07-24 15:58 作者:沒用軟件開發(fā)日記  | 我要投稿

????函數(shù)重載是服務(wù)端常用的編程手段,可以用不同的函數(shù)簽名表達函數(shù)在不同情況下的使用方式,與服務(wù)端不同的是TS的函數(shù)重載多個函數(shù)簽名要對應(yīng)同一個函數(shù)體,引用官方文檔的一個示例:

????在這個例子中演示了函數(shù)重載的寫法,最難讓人理解的可能是最后一個makeDate,其實在TS的函數(shù)重載中可以使用的僅僅是像前兩個函數(shù)那樣只存在必傳參數(shù)的函數(shù),但是為什么還要有第三種形式的粘合劑的存在呢?因為第二種函數(shù)簽名無法做到兼容第一種。

????在ES規(guī)范的范圍內(nèi)其實是不存在函數(shù)重載的,函數(shù)重載只是TS提供的一種編譯期強化能力,也就是上例表達的其實是一個“能接受一個參數(shù)或者三個參數(shù)的函數(shù)”,這是常規(guī)JS語法所無法做到的,第三種函數(shù)簽名出現(xiàn)的意義也僅在給第二種簽名一種邏輯能適配第一種簽名,讓這個函數(shù)變得合理(因為不存在既是一個必填參數(shù)又是三個必填參數(shù),所以需要一個兼容簽名將后兩個參數(shù)標(biāo)記為可選)。

?? ?函數(shù)重載的意義實際上是在編碼層面上明確的告訴使用者該函數(shù)有多少種使用方法。對于上例來講,傳入一個參數(shù)時意味著傳入的是時間戳字符串;傳入三個參數(shù)時證明傳入的是月、日、年數(shù)字。這樣我們就可以避免像曾經(jīng)需要去閱讀代碼邏輯才能知道這個函數(shù)的一堆參數(shù)應(yīng)該如何使用。

TypeScript 高級語法——函數(shù)重載的評論 (共 條)

分享到微博請遵守國家法律
抚州市| 台州市| 东光县| 尤溪县| 霍林郭勒市| 武宁县| 民和| 光泽县| 黄平县| 马山县| 十堰市| 彭州市| 钟山县| 于田县| 东港市| 南川市| 韩城市| 武乡县| 河北省| 揭东县| 广东省| 时尚| 都昌县| 金昌市| 易门县| 呼和浩特市| 临沂市| 咸丰县| 大安市| 海伦市| 武平县| 噶尔县| 潜江市| 平南县| 抚州市| 西林县| 新田县| 周宁县| 曲靖市| 靖西县| 怀柔区|