Menu
CoddyTech

Hàm mũi tên

Thuộc phần Kiến thức cơ bản trong hành trình JavaScript của Coddy. Bài học 51 trên 77.

Hàm mũi tên (arrow function) giúp viết hàm trong JavaScript ngắn gọn hơn. Chúng đặc biệt tiện dụng với các hàm ngắn, đơn giản.

Biểu thức hàm mũi tên có cú pháp ngắn hơn biểu thức hàm và không có các liên kết riêng với những từ khóa this, arguments, super hoặc new.target. Hàm mũi tên luôn không có tên.

Đây là cú pháp cơ bản của hàm mũi tên:

(param1, param2) => {
	// Thân hàm
	// ...
	return value; // Câu lệnh return tùy chọn
}

Nếu hàm chỉ có một tham số, bạn có thể bỏ dấu ngoặc đơn bao quanh danh sách tham số. Nếu thân hàm chỉ có một biểu thức, bạn có thể bỏ dấu ngoặc nhọn và từ khóa return. Kết quả của biểu thức sẽ được tự động trả về.

Đây là một ví dụ về biểu thức hàm truyền thống:

let add = function(a, b) {
	return a + b;
};

Đây là hàm tương tự được viết dưới dạng hàm mũi tên:

let add = (a, b) => a + b;

Trong ví dụ này, dấu ngoặc đơn bao quanh các tham số vẫn được giữ lại vì có hai tham số. Dấu ngoặc nhọn và từ khóa return được lược bỏ vì thân hàm chỉ có một biểu thức.

Đây là một ví dụ khác không có tham số:

let greet = () => console.log("Hello!");
greet(); // Đầu ra: Hello!

Trong trường hợp này, một cặp dấu ngoặc đơn trống cho biết hàm không có tham số.

Hàm mũi tên (arrow function) thường được dùng khi bạn cần truyền một hàm ngắn làm đối số cho một hàm khác.

challenge icon

Thử thách

Dễ

Tạo một hàm mũi tên có tên calculateBMI, nhận hai tham số là weight (tính bằng kilôgam) và height (tính bằng mét), rồi trả về chỉ số khối cơ thể (BMI). Công thức tính BMI là: weight / (height * height).

Ví dụ:

console.log(calculateBMI(70, 1.75)); // Output: 22.857142857142858
console.log(calculateBMI(80, 1.8));  // Output: 24.691358024691358

Tự làm thử

// Viết code của bạn bên dưới


// Đừng thay đổi các dòng bên dưới
console.log(calculateBMI(70, 1.75));
console.log(calculateBMI(80, 1.8));
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức cơ bản

Tự luyện tập: Trình biên dịch JavaScript online