12 July 2023

Sự khác nhau giữa function declaration và expression trong Javascript


Trong JavaScript, có hai cách khai báo hàm là function declaration (khai báo hàm) và function expression (biểu thức hàm). Dưới đây là sự khác nhau giữa hai cách này: 

 

1. Function Declaration (Khai báo hàm): 

   - Cú pháp: function functionName() { } 

   - Được khai báo trên cùng của phạm vi (hoisting), tức là bạn có thể gọi hàm trước khi khai báo nó trong mã. 

   - Có thể gọi hàm từ bất kỳ đâu trong phạm vi hiện tại. 

   - Thường được sử dụng cho các hàm lớn, phức tạp. 

 

Ví dụ:

function myFunction() {
  console.log('Hello!');
};
myFunction(); // Output: Hello!


2. Function Expression (Biểu thức hàm): 

   - Cú pháp: var functionName = function() { } 

   - Khai báo hàm bằng gán giá trị cho một biến. 

   - Không được hoisting, nghĩa là bạn chỉ có thể gọi hàm sau khi nó được khai báo trong mã. 

   - Phạm vi của hàm được giới hạn bởi phạm vi của biến mà nó được gán vào. 

   - Thường được sử dụng cho các hàm nhỏ, đơn giản hoặc trong các biểu thức khác. 

 

Ví dụ:

var myFunction = function() {
  console.log('Hello!');
};
myFunction(); // Output: Hello!

Tóm lại, function declaration và function expression đều cho phép bạn khai báo và sử dụng hàm trong JavaScript. Việc sử dụng loại nào phụ thuộc vào ngữ cảnh và yêu cầu của mã của bạn.

Related Posts:

  • Sự khác nhau giữa function declaration và expression trong JavascriptTrong JavaScript, có hai cách khai báo hàm là function declaration (khai báo hàm) và function expression (biểu thức hàm). Dưới đây là sự khác nhau giữa hai cách này:  1. Function Declaration (Khai báo hàm): &nb… Read More
  • Có bao nhiêu Scopes trong JavascriptScope Levels1 - Global Scope2 - Module Scope3 - Block Scope4 - Function ScopeGlobal Scope<script src="script.js"></script><script>  // script.js  const a = 1  console.log(a)  // Prints: 1… Read More
  • Session và Cookie ?Session và Cookie là hai khái niệm quan trọng trong lập trình web để lưu trữ thông tin và duy trì trạng thái của người dùng trên trang web.  Session (Phiên làm việc) là một cơ chế lưu trữ thông tin trên máy chủ. Khi… Read More
  • JS runtime cách xử lý bất đồng bộ và đồng bộ JS runtime (thời gian chạy của JavaScript) xử lý bất đồng bộ (asynchronous) và đồng bộ (synchronous) theo cách khác nhau.Khi JavaScript chạy trên trình duyệt, runtime sử dụng mô hình sự kiện (event-driven) để xử lý các … Read More
  • Non-blocking và BlockingNon-blocking và blocking là hai khái niệm quan trọng trong lập trình hướng đồng bộ.Non-blocking là một thuật ngữ được sử dụng để chỉ việc thực hiện một tác vụ mà không cần chờ đợi kết quả từ tác vụ đó. Trong một non-blocking … Read More

0 nhận xét:

Post a Comment

 

BACK TO TOP

Xuống cuối trang