पाठ 12 / 38

पैरामीटर और फ़र्स्ट-क्लास फ़ंक्शन

डिफ़ॉल्ट व rest पैरामीटर, और मानों की तरह फ़ंक्शन।

डिफ़ॉल्ट पैरामीटर

किसी पैरामीटर को फ़ॉलबैक मान दें जो आर्ग्युमेंट न मिलने पर उपयोग हो।

function greet(name = "Guest") {
  return `Hello, ${name}!`;
}
console.log(greet());        // Hello, Guest!
console.log(greet("Ada"));   // Hello, Ada!

Rest पैरामीटर

...args किसी भी संख्या में अतिरिक्त आर्ग्युमेंट को एक असली array में इकट्ठा करता है।

function sum(...nums) {
  return nums.reduce((a, b) => a + b, 0);
}
console.log(sum(1, 2, 3, 4));  // 10

फ़ंक्शन भी मान हैं

JS फ़ंक्शन फ़र्स्ट-क्लास हैं — इन्हें वेरिएबल में रखें, आर्ग्युमेंट के रूप में भेजें, या दूसरे फ़ंक्शन से लौटाएँ।

फ़ंक्शन को आगे भेजना

जो फ़ंक्शन किसी दूसरे फ़ंक्शन को लेता या लौटाता है, उसे हायर-ऑर्डर फ़ंक्शन कहते हैं।

function operate(a, b, fn) {
  return fn(a, b);
}
console.log(operate(4, 2, (a, b) => a - b));  // 2