回答
你不能改變的功能PARAM類型,但你可以投(type assert)你傳遞給它的參數去any
:
function fn(obj: string) {
...
}
fn(1 as any);
但是你可以使函數更通用:
function fn(obj: string | number) {
...
}
fn(1);
fn("str");
您也可以使用泛型:
function fn<T>(obj: T) {
...
}
fn(1);
fn("str");
單詞「cast」無處可見於TS文檔或規格中。 – 2016-08-17 03:24:49
@torazaburo來自[基本類型](https://www.typescriptlang.org/docs/handbook/basic-types.html):''類型斷言就像其他語言中的類型轉換,但不執行特殊檢查或重組數據「。 –
冒着迂腐的風險,這個引用最好解釋爲在TypeScript中我們做**而不是**使用術語「投射」。在其他語言中使用的「Cast」通常意味着我**強制更改**類型,例如,將整數轉換爲C中的指針。從這種意義上講,CastScript不可能在TypeScript中使用,其中'
- 1. One Typescript函數參數 - 可選類型?
- 2. Typescript多種類型參數
- 3. Typescript - 遞歸函數類型
- 4. JSX節點中的TypeScript類型參數
- 5. 如果參數類型可轉換,Cast函數類型會有所不同
- 6. typescript - 類型'數字'的參數不能分配給'string'類型的參數
- 7. TypeScript返回參數的類型
- 8. TypeScript交集類型的函數
- 9. Swift中的函數參數類型
- 10. 函數參數類型
- 11. 在TypeScript中使用不同參數類型覆蓋函數的正確方法
- 12. 泛型類沒有泛型函數中的類型參數
- 13. 基於參數類型的TypeScript結果類型
- 14. 泛型函數參數類型推斷
- 15. 函數類型在swift中作爲參數類型的優點?
- 16. 接受函數的函數中參數的類型
- 17. Kotlin實體類型參數不能用作函數體中的類型參數
- 18. Typescript具有通用參數/返回類型的React無狀態函數
- 19. 默認的類型 - 參數化函數文字類參數
- 20. TypeScript:子類型和協變參數類型
- 21. python:檢查函數的參數類型
- 22. 提取C函數的參數類型
- 23. 更改Lodash函數的參數類型
- 24. 是否可以使用構造函數作爲TypeScript中另一個函數的參數類型?
- 25. Typescript使用函數參數應用+ concat
- 26. Typescript中可能的數組類型?
- 27. TypeScript中數組類型的接口
- 28. TypeScript中的通用類型參數推理優先級
- 29. Enum for Typescript中的索引簽名參數類型
- 30. Typescript編譯器API或語言服務獲取函數參數類型
在TS,你不能 「強行改變」 的任何類型。你可以做的是告訴編譯器,它應該**將特定值視爲特定類型。這就是所謂的「類型斷言」。 – 2016-08-17 03:25:46