Trong JavaScript, hàm là một khối mã được đặt tên và có thể được sử dụng để thực hiện một tác vụ cụ thể. Các hàm có thể được sử dụng để tái sử dụng mã, giúp làm cho mã trở nên dễ đọc hơn và giảm thiểu lỗi trong quá trình phát triển.
Cách khai báo hàm trong JavaScript như sau:
function functionName(parameter1, parameter2, ...) {
// Code block to be executed
}
Trong đó, functionName
là tên của hàm, parameter1
, parameter2
,… là các tham số được truyền vào cho hàm (có thể không có tham số) và code block
là những câu lệnh cần thực thi.
Ví dụ, sau đây là một hàm đơn giản để tính tổng của hai số:
function addNumbers(num1, num2) {
let result = num1 + num2;
return result;
}
Trong hàm này, chúng ta có hai tham số num1
và num2
, chúng ta tính tổng của chúng và sau đó trả về kết quả bằng lệnh return
.
Để sử dụng hàm, ta gọi tên của hàm và truyền các tham số cần thiết. Ví dụ:
let sum = addNumbers(5, 10); // sum = 15
Ngoài ra, hàm cũng có thể được lưu trữ trong một biến và được sử dụng như một giá trị:
const multiplyNumbers = function(num1, num2) {
let result = num1 * num2;
return result;
};
let product = multiplyNumbers(3, 4); // product = 12
Có thể sử dụng hàm để thực hiện nhiều tác vụ khác nhau và hàm cũng có thể được gọi đệ quy để thực hiện một loạt các hành động liên tiếp nhau.
Đệ quy là kỹ thuật lập trình cho phép một hàm gọi lại chính nó để thực hiện một loạt các hành động liên tiếp nhau. Ví dụ sau đây minh họa cách sử dụng đệ quy để tính giai thừa của một số trong JavaScript:
function factorial(num) {
if (num === 0 || num === 1) {
return 1;
} else {
return num * factorial(num - 1);
}
}
let result = factorial(5); // result = 120
Trong ví dụ này, hàm factorial
gọi lại chính nó để tính giai thừa của số trừ đi 1. Hàm sẽ tiếp tục gọi lại chính nó đến khi số được trừ đi là 1 hoặc 0, khi đó hàm sẽ trả về 1. Cuối cùng, hàm trả về kết quả của phép tính num * factorial(num – 1), tức là tích của số num với giai thừa của num – 1.
Đệ quy có thể được sử dụng để thực hiện nhiều tác vụ khác nhau, như tìm kiếm trong cây hoặc danh sách liên kết, sắp xếp các phần tử, v.v. Tuy nhiên, cần lưu ý rằng sử dụng đệ quy có thể tốn nhiều tài nguyên và gây ra hiệu suất chậm nếu không được thực hiện đúng cách.
Dưới đây là một ví dụ đơn giản về cách sử dụng hàm trong JavaScript để tính tổng của hai số:
function calculateSum(a, b) {
let sum = a + b;
return sum;
}
let result = calculateSum(5, 7); // result = 12
Trong ví dụ này, hàm calculateSum
nhận vào hai tham số a
và b
, thực hiện phép tính a + b
và trả về kết quả. Sau đó, chúng ta gọi hàm calculateSum
với giá trị a = 5
và b = 7
và lưu kết quả vào biến result
. Cuối cùng, biến result
có giá trị bằng 12.
Bằng cách sử dụng hàm, chúng ta có thể tách biệt các đoạn mã có chức năng khác nhau, giúp mã dễ đọc hơn và dễ bảo trì hơn. Ngoài ra, chúng ta có thể sử dụng lại các hàm trong nhiều đoạn mã khác nhau, giúp tối ưu hóa quá trình phát triển ứng dụng.
Dưới đây là một ví dụ phức tạp hơn về cách sử dụng hàm trong JavaScript để tạo ra một ứng dụng tính toán:
function calculateTip(amount, percentage) {
let tip = amount * percentage / 100;
return tip;
}
function calculateTotal(amount, tip) {
let total = amount + tip;
return total;
}
function formatCurrency(amount) {
let currency = "$" + amount.toFixed(2);
return currency;
}
let billAmount = 100;
let tipPercentage = 20;
let tipAmount = calculateTip(billAmount, tipPercentage);
let totalAmount = calculateTotal(billAmount, tipAmount);
console.log("Bill amount: " + formatCurrency(billAmount));
console.log("Tip percentage: " + tipPercentage + "%");
console.log("Tip amount: " + formatCurrency(tipAmount));
console.log("Total amount: " + formatCurrency(totalAmount));
Trong ví dụ này, chúng ta định nghĩa ba hàm khác nhau:
- Hàm
calculateTip
nhận vào hai tham sốamount
vàpercentage
, tính toán số tiền tip dựa trên tổng số tiền và tỉ lệ phần trăm tip. - Hàm
calculateTotal
nhận vào hai tham sốamount
vàtip
, tính toán tổng số tiền cần thanh toán sau khi đã tính tiền tip. - Hàm
formatCurrency
nhận vào một số tiền và định dạng nó thành một chuỗi có định dạng tiền tệ.
Sau đó, chúng ta khai báo hai biến billAmount
và tipPercentage
để lưu tổng số tiền và tỉ lệ phần trăm tip. Tiếp theo, chúng ta tính toán số tiền tip và tổng số tiền cần thanh toán bằng cách gọi hai hàm calculateTip
và calculateTotal
. Cuối cùng, chúng ta in ra kết quả của các phép tính bằng cách gọi hàm console.log
.
Với ví dụ này, chúng ta đã sử dụng nhiều hàm khác nhau để tạo ra một ứng dụng tính toán đơn giản. Các hàm này có chức năng riêng biệt và có thể được sử dụng lại trong nhiều đoạn mã khác nhau để tối ưu hóa quá trình phát triển ứng dụng.
Chúc bạn thành công!