پێشەکی
لە وانەکانی پێشوودا فێربووین کە فەنکشن چییە و چۆن دروست دەکرێت. بەڵام فەنکشنەکان کاتێک بەهێزتر دەبن کە بتوانن داتای جیاواز وەربگرن و ئەنجامی کارەکەیان بۆ ئێمە بگەڕێننەوە. لەم وانەیەدا بە وردی باس لە پارامەتر و وشەی return دەکەین.
پارامەترەکان چیین؟
پارامەتر (Parameter) ئەو گۆڕاوانەن کە لە ناو کەوانەی فەنکشنەکەدا دەنووسرێن. ئەوان وەک گۆڕاوی ناوخۆیی کاردەکەن و تەنها لە ناو ئەو فەنکشنەدا دەناسرێن.
function sayHello(name) {
console.log("سڵاو " + name);
}
sayHello("ئاراس");
sayHello("سارا");
لە نموونەکەدا، name پارامەترە. کاتێک فەنکشنەکە بانگ دەکەین، ئەو ناوەی دەیدەینێ پێی دەوترێت Argument. هەڵەیەکی باو کە فێرخوازان دەیکەن ئەوەیە کە پارامەترەکە لە دەرەوەی فەنکشنەکە بەکاردەهێنن، کە ئەمە دەبێتە هۆی دروستبوونی هەڵەی ReferenceError.
بەکارهێنانی چەند پارامەترێک
دەتوانیت زیاتر لە پارامەترێک بەکاربهێنیت بە جیاکردنەوەیان بە کۆما (,). ئەمە ڕێگەت پێ دەدات فەنکشنێکی گشتگیرتر دروست بکەیت.
function calculateArea(width, height) {
let area = width * height;
console.log("ڕووبەرەکە بریتییە لە: " + area);
}
calculateArea(10, 5);
لێرەدا فەنکشنەکە دوو ژمارە وەردەگرێت. ئەگەر تەنها یەک ژمارە بنێریت، بەهای دووەمیان دەبێتە undefined و ئەنجامەکەش NaN (Not a Number) دەبێت.
وشەی return چییە؟
زۆربەی کات نامانەوێت فەنکشنەکە تەنها شتێک چاپ بکات، بەڵکو دەمانەوێت ئەنجامەکەی بەدەست بهێنین بۆ ئەوەی لە شوێنێکی تر لە پڕۆگرامەکەدا بەکاری بهێنین. لێرەدا وشەی return بەکاردێت.
function multiply(a, b) {
return a * b;
}
let result = multiply(4, 5);
console.log(result + 10); // 30
کاتێک وشەی return بەکاردێت، فەنکشنەکە ڕادەوەستێت و بەهاکە دەگەڕێنێتەوە بۆ ئەو شوێنەی کە فەنکشنەکەی لێ بانگ کراوە.
return لە ناو فەنکشنەکەدا بنووسرێت، هەرگیز جێبەجێ نابێت (Unreachable code). هەموو کات return کۆتا بڕگەی فەنکشنەکەت بێت.
جیاوازی console.log و return
یەکێک لە هەڵە هەرە باوەکان ئەوەیە کە فێرخوازان پێیان وایە console.log هەمان کاری return دەکات. console.log تەنها بۆ بینینی داتاکانە لە تێرمیناڵدا، بەڵام return داتا دەداتەوە بە کۆدەکەت تاوەکو بتوانیت پاشەکەوتی بکەیت یان لە هاوکێشەی تردا بەکاری بهێنیت.
ڕاهێنانی پراکتیکی
هەوڵ بدە ئەم ڕاهێنانە ئەنجام بدەیت:
- فەنکشنێک دروست بکە بە ناوی
celsiusToFahrenheit. - فەنکشنەکە پارامەترێکی هەبێت کە پلەی گەرمی بە سیلیزی وەردەگرێت.
- بە بەکارهێنانی هاوکێشەی (C * 9/5) + 32 ئەنجامەکەی بگێڕەرەوە (return).
- ئەنجامەکە لە گۆڕاوێکدا پاشەکەوت بکە و بە
console.logپیشانی بدە.