Computer >> Máy Tính >  >> Lập trình >> Javascript

Các cách khác nhau để xác định các hàm trong JavaScript là gì?


Sau đây là một số cách xác định hàm trong JavaScript -

Định nghĩa hàm

Cách phổ biến nhất để xác định một hàm trong JavaScript là sử dụng hàm từ khóa, theo sau là tên hàm duy nhất, danh sách các tham số (có thể trống) và khối câu lệnh được bao quanh bởi dấu ngoặc nhọn.

Đây là ví dụ hiển thị định nghĩa hàm thông thường -

<script>
   <!--
      function Display()
      {
         alert("Hello World!");
      }
   //-->
</script>

Hàm được gọi ngay lập tức

Một cách khác để xác định hàm trong JavaScript là sử dụng Các hàm được gọi ngay lập tức. Mục đích của việc bao bọc là đối với không gian tên và kiểm soát khả năng hiển thị của các hàm thành viên. Nó bao bọc mã bên trong một phạm vi chức năng và giảm xung đột với các thư viện khác. Đây là những gì chúng tôi gọi là Biểu thức hàm được gọi ngay lập tức (IIFE) hoặc Hàm ẩn danh tự thực thi.

Cú pháp

Đây là cú pháp -

(function() {
   // code
})();

Như bạn có thể thấy ở trên, cặp dấu ngoặc đơn sau chuyển đổi mã bên trong dấu ngoặc đơn thành một biểu thức -

function(){...}

Ngoài ra, cặp tiếp theo, tức là cặp ngoặc thứ hai tiếp tục hoạt động. Nó gọi hàm, kết quả từ biểu thức ở trên.

Hàm ẩn danh

Các hàm ẩn danh luôn được tải bằng cách sử dụng một tên biến. Anonymous, như tên cho thấy, cho phép tạo một hàm mà không cần bất kỳ định danh tên nào. Nó có thể được sử dụng như một đối số cho các hàm khác. Gọi họ bằng tên biến -

Đây là cách các hàm ẩn danh trong JavaScript có thể được sử dụng -

var func = function() {
   alert(‘This is anonymous');
}
func();

Ví dụ

//anonymous function
var a = function() {
   return 5;
}

Hàm tạo

Hàm tạo function () được sử dụng trong JavaScript để tạo một đối tượng hàm mới. Các đối tượng được tạo sẽ được phân tích cú pháp khi hàm được tạo.

Bạn có thể thử chạy đoạn mã sau để tìm hiểu cách làm việc với hàm tạo hàm () -

<html>
   <body>
      <script>
         var num = new Function('p', 'q', 'r', 'return p * q * r');
         document.write("Value after multiplication: "+num(5, 2, 9));
      </script>
   </body>
</html>