JavaScript không hỗ trợ multiple inheritance (kế thừa đa dạng) gốc.
Tại sao?
- Kế thừa property xảy ra tại runtime bằng cách **duyệt prototype chain**.
- Mỗi object chỉ có **một prototype** duy nhất (
__proto__). - Không thể động kế thừa từ 2+ prototype chain cùng lúc.
Workaround (giải pháp thay thế)
- Mixin / Object.assign: Copy method từ nhiều source vào prototype/class.
- Composition: Object chứa instance của các class khác (has-a thay vì is-a).
- Proxy / Factory function: Tạo object kết hợp behavior.
Tham khảo: ES6 class multiple inheritance
Lưu ý: Không giải pháp nào cung cấp multiple inheritance hoàn chỉnh — đây không phải tính năng ngôn ngữ.