You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/mo/2-js-basics/2-functions-methods/assignment.md

4.0 KiB

與函數的趣味互動

說明

在這次作業中,你將練習創建不同類型的函數,以加強你對 JavaScript 函數、參數、預設值以及返回值的理解。

建立一個名為 functions-practice.js 的 JavaScript 文件,並實現以下函數:

第一部分:基本函數

  1. 創建一個名為 sayHello 的函數,該函數不接受任何參數,只需在控制台輸出 "Hello!"。

  2. 創建一個名為 introduceYourself 的函數,該函數接受一個 name 參數,並在控制台輸出類似 "Hi, my name is [name]" 的訊息。

第二部分:帶有預設參數的函數

  1. 創建一個名為 greetPerson 的函數,該函數接受兩個參數:name(必填)和 greeting(可選,預設值為 "Hello")。該函數應在控制台輸出類似 "[greeting], [name]!" 的訊息。

第三部分:返回值的函數

  1. 創建一個名為 addNumbers 的函數,該函數接受兩個參數(num1num2),並返回它們的總和。

  2. 創建一個名為 createFullName 的函數,該函數接受 firstNamelastName 參數,並返回完整姓名作為一個字符串。

第四部分:綜合應用

  1. 創建一個名為 calculateTip 的函數,該函數接受兩個參數:billAmount(必填)和 tipPercentage(可選,預設值為 15。該函數應計算並返回小費金額。

第五部分:測試你的函數

添加函數調用以測試每個函數,並使用 console.log() 顯示結果。

範例測試調用:

// Test your functions here
sayHello();
introduceYourself("Sarah");
greetPerson("Alex");
greetPerson("Maria", "Hi");

const sum = addNumbers(5, 3);
console.log(`The sum is: ${sum}`);

const fullName = createFullName("John", "Doe");
console.log(`Full name: ${fullName}`);

const tip = calculateTip(50);
console.log(`Tip for $50 bill: $${tip}`);

評分標準

評分項目 優秀 合格 需要改進
函數創建 所有 6 個函數均正確實現,並符合語法和命名規範 4-5 個函數正確實現,僅有輕微語法問題 僅實現 3 個或更少函數,或存在重大語法錯誤
參數與預設值 正確使用必填參數、可選參數和指定的預設值 正確使用參數,但可能存在預設值問題 參數實現不正確或缺失
返回值 應返回值的函數正確返回值,不應返回值的函數僅執行操作 大多數返回值正確,僅有輕微問題 返回值存在重大問題
代碼品質 代碼清晰、結構良好,變數命名有意義且縮排正確 代碼可運行,但可以更清晰或更有結構 代碼難以閱讀或結構不佳
測試 所有函數均通過適當的函數調用進行測試,結果顯示清晰 大多數函數測試充分 函數測試有限或不正確

額外挑戰(可選)

如果你想進一步挑戰自己:

  1. 創建其中一個函數的箭頭函數版本
  2. 創建一個接受另一個函數作為參數的函數(例如課程中的 setTimeout 示例)
  3. 添加輸入驗證,以確保你的函數能夠妥善處理無效輸入

💡 提示記得打開瀏覽器的開發者控制台F12查看你的 console.log() 語句的輸出!


免責聲明
本文件已使用 AI 翻譯服務 Co-op Translator 進行翻譯。儘管我們努力確保翻譯的準確性,但請注意,自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於關鍵信息,建議使用專業人工翻譯。我們對因使用此翻譯而引起的任何誤解或誤釋不承擔責任。