Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

ฟังก์ชันระดับเฟิร์สคลาสใน JavaScript


JavaScript ถือว่าฟังก์ชันเป็นออบเจ็กต์และอนุญาตให้เราส่งฟังก์ชันต่างๆ เป็นพารามิเตอร์ไปยังฟังก์ชันอื่น และส่งคืนฟังก์ชันจากฟังก์ชันอื่นๆ ได้ ใน JavaScript ฟังก์ชันต่างๆ เป็นฟังก์ชันระดับเฟิร์สคลาส ซึ่งหมายความว่าเราสามารถจัดเก็บไว้ในตัวแปร อ็อบเจ็กต์ และอาร์เรย์ได้ ฟังก์ชันลำดับที่สูงกว่าสามารถรับฟังก์ชัน ส่งคืน หรือทำทั้งสองอย่างได้

ต่อไปนี้เป็นรหัสเพื่อใช้งานฟังก์ชันระดับเฟิร์สคลาสใน JavaScript -

ตัวอย่าง

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<style>
   body {
      font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
   }
   .result,
   .sample {
      font-size: 18px;
      font-weight: 500;
      color: rebeccapurple;
   }
   .result {
      color: red;
   }
</style>
</head>
<body>
<h1>First class function in Javascript</h1>
<div class="sample">[22,33,44,55]</div>
<br />
<div class="result"></div>
<br />
<button class="Btn">CLICK HERE</button>
<h3>Click on the above button to double each element of the above array</h3>
<script>
   let resEle = document.querySelector(".result");
   let BtnEle = document.querySelector(".Btn");
   let doubleNum = (ele) => {
      return ele * 2;
   };
   let arr = [22, 33, 44, 55];
   function doubleArray(arr, fn) {
      let doubleArr = [];
      arr.forEach((element) => {
         doubleArr.push(doubleNum(element));
      });
      return doubleArr;
   }
   BtnEle.addEventListener("click", () => {
      resEle.innerHTML = "New array = " + doubleArray(arr, doubleNum);
   });
</script>
</body>
</html>

ผลลัพธ์

ฟังก์ชันระดับเฟิร์สคลาสใน JavaScript

เมื่อคลิกปุ่ม 'คลิกที่นี่' -

ฟังก์ชันระดับเฟิร์สคลาสใน JavaScript