Tham số và Giá trị Trả về của Hàm trong JavaScript
Trong JavaScript, hàm có thể nhận tham số đầu vào và trả về giá trị sau khi thực thi. Điều này giúp tăng tính linh hoạt của chương trình, giúp tái sử dụng code một cách hiệu quả hơn.
Trong bài này, bạn sẽ học về:
- Tham số và đối số trong hàm (Parameters & Arguments).
- Giá trị mặc định của tham số khi không truyền đối số.
-
Hàm có giá trị trả về (
return
) và cách sử dụng nó. -
Sự khác biệt giữa hàm có
return
và không córeturn
. - Ví dụ thực tế minh họa.

Tham số và Giá trị Trả về của Hàm trong JavaScript
1. Truyền tham số vào hàm (Parameters & Arguments)
-
Tham số (Parameters): Là biến được định nghĩa trong dấu ngoặc
()
khi khai báo hàm. - Đối số (Arguments): Là giá trị thực tế được truyền vào khi gọi hàm.
Ví dụ minh họa:
// Định nghĩa hàm với 2 tham số
function greet(name, age) {
console.log(`Xin chào ${name}, bạn ${age} tuổi!`);
}
// Gọi hàm với đối số cụ thể
greet("Nam", 25); // Output: Xin chào Nam, bạn 25 tuổi!
greet("Linh", 20); // Output: Xin chào Linh, bạn 20 tuổi!
Nếu không truyền đủ đối số, giá trị mặc định sẽ là undefined
.
Ví dụ thiếu đối số:
greet("Hà"); // Output: Xin chào Hà, bạn undefined tuổi!
2. Giá trị mặc định của tham số
Nếu không truyền đối số, có thể đặt giá trị mặc định cho tham số.
Ví dụ:
function greet(name = "bạn", age = 18) {
console.log(`Xin chào ${name}, bạn ${age} tuổi!`);
}
greet(); // Output: Xin chào bạn, bạn 18 tuổi!
greet("Hoa"); // Output: Xin chào Hoa, bạn 18 tuổi!
greet("Minh", 22); // Output: Xin chào Minh, bạn 22 tuổi!
Lợi ích: Tránh lỗi undefined
khi không truyền đủ đối số.
3. Hàm có giá trị trả về (return
)
- Một hàm có thể trả về giá trị bằng từ khóa
return
. - Khi gặp
return
, hàm sẽ kết thúc ngay lập tức và trả về kết quả.
Ví dụ:
function sum(a, b) {
return a + b;
}
let result = sum(5, 10);
console.log(result); // Output: 15
Lợi ích: Có thể lưu trữ kết quả vào biến và sử dụng lại.
Ví dụ dùng return
trong điều kiện:
function isEven(number) {
return number % 2 === 0;
}
console.log(isEven(4)); // Output: true
console.log(isEven(7)); // Output: false
4. Sự khác biệt giữa hàm có return
và không có return
Loại hàm | Cách hoạt động | Ví dụ |
---|---|---|
Không có return |
Chỉ thực hiện hành động, không trả về kết quả. | console.log("Hello!") |
Có return |
Trả về một giá trị để sử dụng lại. | return a + b; |
Ví dụ so sánh
Hàm không có return
(chỉ hiển thị kết quả):
function showMessage() {
console.log("Xin chào!");
}
let result = showMessage();
console.log(result); // Output: undefined
Hàm có return
(có thể sử dụng lại giá trị):
function getMessage() {
return "Xin chào!";
}
let result = getMessage();
console.log(result); // Output: Xin chào!
Ví dụ thực tế
Hàm tính diện tích hình chữ nhật
function getRectangleArea(width, height) {
return width * height;
}
console.log(getRectangleArea(5, 10)); // Output: 50
console.log(getRectangleArea(3, 7)); // Output: 21
Hàm kiểm tra số nguyên tố
function isPrime(num) {
if (num < 2) return false;
for (let i = 2; i < num; i++) {
if (num % i === 0) return false;
}
return true;
}
console.log(isPrime(7)); // Output: true
console.log(isPrime(10)); // Output: false
Hàm tính tổng các số trong mảng
function sumArray(arr) {
let sum = 0;
for (let num of arr) {
sum += num;
}
return sum;
}
console.log(sumArray([1, 2, 3, 4, 5])); // Output: 15
Hàm tạo lời chào dựa trên thời gian
function greetUser(name) {
let hour = new Date().getHours();
let greeting = hour < 12 ? "Chào buổi sáng" : "Chào buổi chiều";
return `${greeting}, ${name}!`;
}
console.log(greetUser("Hải")); // Output: Chào buổi sáng, Hải! (hoặc Chào buổi chiều, Hải!)
Kết luận
- Tham số giúp truyền dữ liệu vào hàm để xử lý linh hoạt hơn.
- Có thể đặt giá trị mặc định để tránh lỗi khi thiếu tham số.
-
Hàm có
return
sẽ trả về giá trị để sử dụng lại, trong khi hàm không córeturn
chỉ thực thi hành động. -
Biết khi nào nên sử dụng
return
giúp tối ưu hóa code và tăng hiệu quả làm việc.

Với hơn 10 năm kinh nghiệm lập trình web và từng làm việc với nhiều framework, ngôn ngữ như PHP, JavaScript, React, jQuery, CSS, HTML, CakePHP, Laravel..., tôi hy vọng những kiến thức được chia sẻ tại đây sẽ hữu ích và thiết thực cho các bạn.
Xem thêm

Chào, tôi là Vũ. Đây là blog hướng dẫn lập trình của tôi.
Liên hệ công việc qua email dưới đây.
lhvuctu@gmail.com