Cả hai câu trả lời ở đây đều đúng và tốt, nhưng tôi muốn bổ sung thêm chi tiết dựa trên tiêu đề câu hỏi này.
Khi tôi thấy "ES6 - Gọi phương thức tĩnh trong một lớp", nó giống như "gọi một phương thức tĩnh (từ một phương thức không tĩnh) trong một lớp". Không xác định những gì người hỏi câu hỏi ban đầu đang hỏi trong chi tiết.
Nhưng đối với bất kỳ ai muốn biết cách gọi một phương thức tĩnh từ một phương thức không tĩnh trong một lớp, bạn có thể thực hiện như sau:
class MyClass {
myNonStaticMethod () {
console.log("I'm not static.")
MyClass.myStaticMethod()
}
static myStaticMethod () {
console.log("hey, I'm static!")
}
}
MyClass.myStaticMethod()
const me = new MyClass()
me.myNonStaticMethod()
Ý tưởng là phương thức tĩnh có thể được gọi mà không cần tạo một thể hiện mới của lớp. Điều đó có nghĩa là bạn có thể gọi nó bên trong phương thức của instance giống như cách bạn gọi nó bên ngoài instance.
Một lần nữa, tôi biết đó không phải là chi tiết của câu hỏi yêu cầu, nhưng điều này có thể hữu ích cho những người khác.