網站搜尋

在 TypeScript 中 ?: 意味著什麼?


我在 Angular 的 TypeScript 聲明檔中發現了以下內容:

interface IDirective{
    compile?:
        (templateElement: IAugmentedJQuery,

在 compile 之後的 ?: 是做什麼的?

答案#1

參見:操作指南:介面 | TypeScript :: 描述簡單類型。

基本上,? 將該成員標記為介面中的可選項。

(編輯:如評論中所述,這不僅限於介面。)

答案#2

在這種情況下,?: 不是單一運算符,而是兩個運算符:

  • ?(可選),

  • :(指定類型)。

在其他語言/情況下,?: 將是 Elvis 運算子。