Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Function Overloading (Nạp chồng hàm) trong JavaScript

JavaScript không hỗ trợ Function Overloading theo cách truyền thống. Nếu bạn định nghĩa nhiều hàm cùng tên, hàm sau sẽ ghi đè hàm trước.

function funcONE(x, y) { return x * y; }
function funcONE(z) { return z; }

Khi gọi:

funcONE(5);    // Trả về 5 (hàm thứ 2)
funcONE(5, 6); // Trả về 5 (vẫn hàm thứ 2, đối số 6 bị bỏ qua), KHÔNG phải 30

Giải pháp thay thế: Dùng arguments object, rest parameters, hoặc kiểm tra typeof đối số để mô phỏng overloading.