目錄
TypeScript 函數可選參數的完整教學
TypeScript 是一種 JavaScript 的超集,提供了類型系統和 ES6 的支持,使開發者可以更輕鬆地編寫健壯的程式碼。在 TypeScript 中,函數可以有可選參數,這使得函數的設計可以更加靈活。
可選參數允許函數的參數不必傳入,這樣的設計可以簡化函數的使用。以下是可選參數的基本語法:
function sayHello(name: string, age?: number) {
console.log(`Hello, {name}, you are{age !== undefined ? age : 'unknown'} years old.`);
}
在上面的範例中,我們定義了一個函數 sayHello
,它接收一個必須的參數 name
以及一個可選的參數 age
。這裡的可選參數在未提供時會使用預設值。
接下來,讓我們看看如何使用這個函數:
sayHello('John', 20); // Hello, John, you are 20 years old.
sayHello('John'); // Hello, John, you are unknown years old.
當我們傳入可選參數 age
時,函數會根據提供的值輸出;如果省略了該參數,則會顯示預設的訊息。
錯誤排除
在使用可選參數時,開發者可能會遇到以下常見問題:
- 未傳入可選參數: 確認函數調用時是否正確省略了該參數。
- 類型不匹配: 確保傳入的參數類型符合定義的類型。
延伸應用
可選參數不僅限於函數,也可以與其他 TypeScript 特性結合使用,像是物件字面量和接口。這樣能進一步增強程式的可讀性與維護性。
常見問題解答 (Q&A)
Q1: 可選參數在 TypeScript 中如何使用?
A1: 可選參數在函數定義中使用 “?” 符號來表示,這樣就可以在調用函數時選擇性地傳入該參數。
Q2: 如果我不提供可選參數,會發生什麼事?
A2: 如果不提供可選參數,函數將使用預設的行為,通常是返回一個預設值或顯示相關的訊息。
Q3: 可選參數可以有預設值嗎?
A3: 是的,可以在函數定義中為可選參數設定預設值,例如 age: number = 0
。
—