2
這個數字是一個非常鬆散的表示,有時需要擰緊。在我的情況下,我希望一個變量只能取非負整數。有沒有辦法在TypeScript中強制執行這個約束?有沒有辦法在TypeScript中表示非負整數,以便編譯器可以防止使用分數和負數?
這個數字是一個非常鬆散的表示,有時需要擰緊。在我的情況下,我希望一個變量只能取非負整數。有沒有辦法在TypeScript中強制執行這個約束?有沒有辦法在TypeScript中表示非負整數,以便編譯器可以防止使用分數和負數?
不,這是不可能的;在JavaScript中沒有* uint
或類似的,所以在TypeScript中沒有對應的類型。有一個open feature request for Contracts,它允許你提供更健壯的斷言,如果它已經實現。 *
*此類數據類型存在於Typed Array specification中,但這些數據類型主要是爲WebGL設計的,並非核心語言的一部分。
不,在TypeScript或JavaScript中沒有這樣的東西。您需要以不同的方式強制執行它(例如通過使用保護值集的函數或屬性)。 – WiredPrairie