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/km/2-js-basics/2-functions-methods/assignment.md

9.0 KiB

រីករាយជាមួយមុខងារ

សេចក្តីណែនាំ

ក្នុងការងារនេះ អ្នកនឹងអនុវត្តបង្កើតមុខងារប្រភេទផ្សេងៗ ដើម្បីរឹតបន្ថែមយល់ដឹងអំពីមុខងារ JavaScript, ប៉ារ៉ាម៉ែត្រ, តម្លៃលំនាំដើម និងការបញ្ជូនតម្លៃត្រឡប់។

បង្កើតឯកសារ JavaScript មួយឈ្មោះ functions-practice.js ហើយអនុវត្តមុខងារដូចខាងក្រោម៖

ផ្នែកទី 1: មុខងារមូលដ្ឋាន

  1. បង្កើតមុខងារដែលមានឈ្មោះ sayHello ដែលមិនទទួលប៉ារ៉ាម៉ែត្រណាមួយ និងបង្ហាញ "Hello!" ទៅកុងសូល។

  2. បង្កើតមុខងារដែលមានឈ្មោះ introduceYourself ដែលទទួលប៉ារ៉ាម៉ែត្រឈ្មោះ name ហើយបង្ហាញសារដូចជា "Hi, my name is [name]" ទៅកុងសូល។

ផ្នែកទី 2: មុខងារដោយមានប៉ារ៉ាម៉ែត្រលំនាំដើម

  1. បង្កើតមុខងារដែលមានឈ្មោះ greetPerson ដែលទទួលប៉ារ៉ាម៉ែត្រ ២: name (បង្ហាញបណ្ដាចាំបាច់) និង greeting (ជាជម្រើស, តម្លៃលំនាំដើម = "Hello")។ មុខងារនេះគួរបង្ហាញសារដូចជា "[greeting], [name]!" ទៅកុងសូល។

ផ្នែកទី 3: មុខងារដែលត្រឡប់តម្លៃ

  1. បង្កើតមុខងារដែលមានឈ្មោះ addNumbers ដែលទទួលប៉ារ៉ាម៉ែត្រ ២ (num1 និង num2) ហើយត្រឡប់តម្លៃសរុបរបស់ពួកវា។

  2. បង្កើតមុខងារដែលមានឈ្មោះ createFullName ដែលទទួលប៉ារ៉ាម៉ែត្រ firstName និង lastName ហើយត្រឡប់តម្លៃឈ្មោះពេញជា string តែមួយ។

ផ្នែកទី 4: លាយបញ្ចូលគ្នា

  1. បង្កើតមុខងារដែលមានឈ្មោះ calculateTip ដែលទទួលប៉ារ៉ាម៉ែត្រ ២: billAmount (បង្ហាញបណ្ដាចាំបាច់) និង tipPercentage (ជាជម្រើស, តម្លៃលំនាំដើម = 15)។ មុខងារនេះគួរគណនានិងត្រឡប់តម្លៃថ្លៃចំនេញ។

ផ្នែកទី 5: សាកល្បងមុខងារ

បន្ថែមការហៅមុខងារដើម្បីសាកល្បងមុខងារនីមួយៗ និងបង្ហាញលទ្ធផលដោយប្រើ console.log()

ឧទាហរណ៍ការហៅសាកល្បង៖

// សាកល្បង​ឧបករណ៍​របស់​អ្នក​នៅទីនេះ
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. បង្កើតមុខងារ arrow function មួយនៃមុខងាររបស់អ្នក
  2. បង្កើតមុខងារមួយដែលទទួលមុខងារផ្សេងទៀតជាប៉ារ៉ាម៉ែត្រ (ដូចឧទាហរណ៍ setTimeout ពីមេរៀន)
  3. បន្ថែមការត្រួតពិនិត្យបញ្ចូល ដើម្បីធានាថាមុខងាររបស់អ្នកដំណើរការជាប្រក្រតីនៅពេលបញ្ចូលខុសប្រក្រតី

💡 គន្លឹះ៖ សូមចងចាំបើកកុងសូលអ្នកអភិវឌ្ឍន៍របស់កម្មវិធីរុករក (F12) ដើម្បីមើលលទ្ធផលការបង្ហោះ console.log() របស់អ្នក!


ការបដិសេធ៖ ឯកសារនេះបានបម្លែងភាសាដោយប្រើសេវាកម្មបកប្រែ AI Co-op Translator។ ទោះបីយើងខិតខំរកកំហុសឲ្យតិចបំផុតក៏ដោយ សូមយល់ដឹងថាការបកប្រែដោយស្វយ័តអាចមានកំហុសឬភាពមិនត្រឹមត្រូវ។ ឯកសារដើមនៅក្នុងភាសាដើមគួរត្រូវបានទទួលស្គាល់ថាជាផ្នែកមានសុទ្ឋិភាពខ្ពស់បំផុត។ សម្រាប់ព័ត៌មានសំខាន់ៗ ត្រូវបានផ្ដល់អនុសាសន៍ឲ្យបកប្រែដោយមនុស្សយ៉ាងម៉ត់ចត់វិជ្ជាជីវៈ។ យើងមិនទទួលខុសត្រូវចំពោះការ​យល់ច្រឡំ ឬការ​បកប្រែ​កំហុសណាមួយ​ដែលកើតឡើងពីការប្រើប្រាស់ការបកប្រែនេះឡើយ។