Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách gọi Hàm JavaScript bằng Trình tạo hàm 'mới'
Các hàm là một tập hợp các mã có thể tái sử dụng để thực hiện một tác vụ cụ thể và có thể trả về một giá trị. Trong JavaScript, các hàm được xác định bởi từ khóa function. Một hàm có thể không có bất kỳ tham số nào và cũng có thể không có bất kỳ câu lệnh trả về nào. Trong JavaScript, chúng ta cũng có những hàm không có tên hàm, được gọi là hàm ẩn danh
Sử dụng Hàm tạo hàm 'mới'
Hàm tạo Hàm tạo một đối tượng Hàm mới. Bằng cách sử dụng hàm tạo, chúng ta có thể tạo một hàm động. Nó nhận các tham số hoặc đối số và thân hàm. Nó có thể có những lo ngại về bảo mật vì chúng ta có thể sử dụng nó để khai báo một hàm một cách linh hoạt
Người dùng có thể làm theo cú pháp bên dưới để gọi Hàm JavaScript với Trình tạo hàm 'mới'
cú pháp
const func = new Function[arg1, arg2, ..., function_body]
Trong cú pháp trên, "func" là biến lưu trữ hàm được tạo bởi hàm tạo hàm 'new'. Hàm tạo hàm nhận đối số và thân hàm
Thông số
Đối số– Nó nhận số 'n' đối số của hàm
Phần thân hàm– Đây là phần thân hàm chứa tất cả logic của hàm
Gọi hàm với Hàm tạo hàm 'mới' không có tham số
Tham số là tập hợp thông tin hoặc dữ liệu mà chúng ta chuyển vào một hàm trong khi gọi nó. Một hàm có thể có một tham số, nhiều tham số hoặc không có tham số nào cả. Chúng ta phải viết tên hàm và đặt dấu ngoặc mở và đóng để gọi hàm. Đối với hàm ẩn danh, chúng ta cần viết biến lưu trữ hàm rồi mở và đóng ngoặc
Người dùng có thể làm theo cú pháp bên dưới để gọi một hàm JavaScript không có tham số
cú pháp
// function declaration with no arguments const func = new Function[function_body] // function call func[]
"func" là tên biến lưu hàm theo cú pháp trên
Thí dụ
Trong ví dụ dưới đây, chúng tôi đã gọi một hàm JavaScript dưới dạng một hàm. Chúng tôi sử dụng các sự kiện bấm của hai nút để thực hiện bình phương và lập phương của một số. Mỗi hàm nhận một tham số, "num", Bằng cách nhấp vào nút "Tìm Square", chúng tôi đang thực thi hàm square, hàm này nhận tham số và trả về giá trị bình phương của nó. Bằng cách nhấp vào nút "Tìm khối", chúng tôi thực hiện chức năng khối, lấy tham số và trả về giá trị của nó. Chúng tôi đang xuất các giá trị trả về của hàm trên trang web
Giả sử bạn cần tạo chương trình tạo hình tròn và tô màu cho nó. Bạn có thể tạo hai chức năng để giải quyết vấn đề này
- một chức năng để vẽ vòng tròn
- một chức năng để tô màu vòng tròn
Chia một vấn đề phức tạp thành các phần nhỏ hơn giúp chương trình của bạn dễ hiểu và có thể tái sử dụng
JavaScript cũng có một số lượng lớn các chức năng sẵn có. Ví dụ,
// declaring a function named greet[]
function greet[] {
console.log["Hello there"];
}
3 là hàm tính căn bậc hai của một sốTrong hướng dẫn này, bạn sẽ tìm hiểu về các hàm do người dùng định nghĩa
Khai báo một chức năng
Cú pháp để khai báo một hàm là
function nameOfFunction [] {
// function body
}
- Một hàm được khai báo bằng từ khóa
4// declaring a function named greet[] function greet[] { console.log["Hello there"]; }
- Các quy tắc cơ bản của việc đặt tên hàm tương tự như đặt tên biến. Tốt hơn là viết một tên mô tả cho chức năng của bạn. Ví dụ: nếu một hàm được sử dụng để cộng hai số, bạn có thể đặt tên hàm là
5 hoặc// declaring a function named greet[] function greet[] { console.log["Hello there"]; }
6// declaring a function named greet[] function greet[] { console.log["Hello there"]; }
- Phần thân của hàm được viết trong vòng
7// declaring a function named greet[] function greet[] { console.log["Hello there"]; }
Ví dụ,
// declaring a function named greet[]
function greet[] {
console.log["Hello there"];
}
Gọi một chức năng
Trong chương trình trên, chúng ta đã khai báo một hàm tên là
// declaring a function named greet[]
function greet[] {
console.log["Hello there"];
}
8. Để sử dụng chức năng đó, chúng ta cần gọi nóĐây là cách bạn có thể gọi hàm
// declaring a function named greet[]
function greet[] {
console.log["Hello there"];
}
8 ở trên// function declaration with no arguments const func = new Function[function_body] // function call func[]1
ví dụ 1. Hiển thị một văn bản
// function declaration with no arguments const func = new Function[function_body] // function call func[]2
đầu ra
// function declaration with no arguments const func = new Function[function_body] // function call func[]3
Thông số chức năng
Một chức năng cũng có thể được khai báo với các tham số. Tham số là giá trị được truyền khi khai báo hàm
ví dụ 2. Hàm có tham số
// function declaration with no arguments const func = new Function[function_body] // function call func[]4
đầu ra
// function declaration with no arguments const func = new Function[function_body] // function call func[]5
Trong chương trình trên, hàm
// function declaration with no arguments const func = new Function[function_body] // function call func[]10 được khai báo với tham số
// function declaration with no arguments const func = new Function[function_body] // function call func[]11. Người dùng được nhắc nhập tên. Sau đó, khi hàm được gọi, một đối số được truyền vào hàm
Ghi chú. Khi một giá trị được truyền vào khi khai báo một hàm, nó được gọi là tham số. Và khi hàm được gọi, giá trị được truyền vào được gọi là đối số
ví dụ 3. Cộng Hai Số
// function declaration with no arguments const func = new Function[function_body] // function call func[]8
đầu ra
// function declaration with no arguments const func = new Function[function_body] // function call func[]9
Trong chương trình trên, hàm
// declaring a function named greet[]
function greet[] {
console.log["Hello there"];
}
5 được sử dụng để tìm tổng của hai số- Hàm được khai báo với hai tham số
// function declaration with no arguments const func = new Function[function_body] // function call func[]
13 và// function declaration with no arguments const func = new Function[function_body] // function call func[]
14 - Hàm được gọi bằng tên của nó và truyền hai đối số 3 và 4 trong một và 2 và 9 trong một hàm khác
Lưu ý rằng bạn có thể gọi một hàm bao nhiêu lần tùy thích. Bạn có thể viết một hàm và sau đó gọi nó nhiều lần với các đối số khác nhau
Hàm trả về
Câu lệnh
// function declaration with no arguments const func = new Function[function_body] // function call func[]15 có thể được sử dụng để trả về giá trị cho lời gọi hàm
Câu lệnh
// function declaration with no arguments const func = new Function[function_body] // function call func[]15 biểu thị rằng chức năng đã kết thúc. Bất kỳ mã nào sau
// function declaration with no arguments const func = new Function[function_body] // function call func[]15 đều không được thực thi
Nếu không có gì được trả về, hàm sẽ trả về giá trị
// function declaration with no arguments const func = new Function[function_body] // function call func[]18
Ví dụ 4. Tổng của hai số
// declaring a function named greet[]
function greet[] {
console.log["Hello there"];
}
7đầu ra
// declaring a function named greet[]
function greet[] {
console.log["Hello there"];
}
0Trong chương trình trên, tổng của các số được hàm trả về bằng cách sử dụng câu lệnh
// function declaration with no arguments const func = new Function[function_body] // function call func[]15. Và giá trị đó được lưu trữ trong biến kết quả
Lợi ích của việc sử dụng một chức năng
- Chức năng làm cho mã có thể tái sử dụng. Bạn có thể khai báo một lần và sử dụng nhiều lần
- Chức năng làm cho chương trình dễ dàng hơn khi mỗi nhiệm vụ nhỏ được chia thành một chức năng
- Chức năng tăng khả năng đọc
Trong Javascript, hàm cũng có thể được định nghĩa là biểu thức. Ví dụ,
// declaring a function named greet[]
function greet[] {
console.log["Hello there"];
}
1đầu ra
// declaring a function named greet[]
function greet[] {
console.log["Hello there"];
}
2Trong chương trình trên, biến x được dùng để lưu hàm. Ở đây hàm được coi như một biểu thức. Và hàm được gọi bằng tên biến
Hàm trên được gọi là hàm ẩn danh
Ghi chú. Trong ES2015, các biểu thức JavaScript được viết dưới dạng hàm mũi tên. Bạn sẽ tìm hiểu về chúng trong các hướng dẫn sau