デフォルト値
メニューを表示するにはスワイプしてください
TypeScriptの関数のもう一つの特徴は、デフォルトパラメータ値です。デフォルト値は、オプションパラメータと併用または代用されることがよくあります。パラメータにデフォルト値を設定することができ、関数呼び出し時にそのパラメータの値を指定しなかった場合、デフォルト値で初期化されます。
例を見てみましょう:
123456function createBankTransaction(amount: number, description: string = "No description provided") { console.log(`Transaction: ${description}, Amount: $${amount}`); } createBankTransaction(100); // No description provided: Transaction: No description provided, Amount: $100 createBankTransaction(200, "Deposit"); // With provided description: Transaction: Deposit, Amount: $200
銀行取引を実行するための最もシンプルな関数例です。この関数は、取引金額とその説明を通知します。
ユーザーは必ずしも取引の説明を入力するとは限らないため、このフィールドはオプションです。ご覧の通り、取引に説明がないことを示すデフォルト値を指定するには、イコール記号とデフォルトとして渡したい値を使います。そのため、関数呼び出し時にこのパラメータが定義されていない場合、デフォルト値が使用されます。もう一度構文を確認しましょう:
function funcName(optionalParam?: dataType, defaultParam: dataType = 'value', parameter: dataType) {
// some code
}
また、関数には任意の数の異なるパラメータを使用できることにも注目してください。オプションパラメータを2つ、デフォルトパラメータを31個、または通常パラメータを792個まで使用できます。792個以上のパラメータを使うことはおすすめしません。そうすると、周囲から奇異の目で見られるかもしれません。次のような例を見てみましょう:
123456789101112131415161718192021222324252627282930313233function orderProduct(productName: string, quantity: number = 1, discount?: number, shippingMethod = "Standard", giftWrap = false, deliveryDate = "Tomorrow"): void { let totalCost = 0; // Calculate the product cost let basePrice = 100; // Cost per unit of the product if (discount !== undefined) { basePrice -= discount; } totalCost = basePrice * quantity; // Add shipping cost if (shippingMethod === "Express") { totalCost += 10; } // Add gift wrapping cost if (giftWrap) { totalCost += 5; } console.log(`Order Details: Product: ${productName} Quantity: ${quantity} Shipping Method: ${shippingMethod} Gift Wrap: ${giftWrap} Delivery Date: ${deliveryDate} Total Cost: $${totalCost}`); } // Function call examples: orderProduct("Laptop"); // Defaults to 1 unit, standard shipping, no discount, no gift wrapping orderProduct("Smartphone", 2, 20, "Express", true); // Order 2 smartphones with a 20% discount, express shipping, and gift wrapping orderProduct("Headphones", 3, undefined, "Standard", false, "Next week"); // Order 3 headphones with no discount, standard shipping, and delivery next week
この例では:
productNameは必須パラメータです;quantity、discount、shippingMethod、giftWrap、deliveryDateはすべてデフォルト値を持ち、関数呼び出し時に省略できます;orderProduct関数はパラメータを受け取り、注文の合計金額と詳細を計算して出力します。
この例は、オプションパラメータやデフォルトパラメータを使って、さまざまな利用シーンに対応できる柔軟な関数を作成できることを示しています。
コードはやや長くなりましたが、関数内のパラメータの仕組みを理解するのに役立つ内容になっていると思います。すべて理解できたなら、素晴らしいです!
フィードバックありがとうございます!
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください