ES6 클래스에서 정적 메서드를 호출하는 방법
ES6 클래스에서 정적 메서드를 처리할 때 이를 호출하는 두 가지 기본 접근 방식이 있습니다. 둘 사이의 선택은 특정 요구 사항과 기대에 따라 달라집니다.
생성자 사용
첫 번째 방법은 클래스의 생성자 함수를 사용하는 것입니다. 예를 들어 다음 예에서는
class SomeObject { constructor(n){ this.n = n; } static print(n){ console.log(n); } printN(){ this.constructor.print(this.n); } }
정적 인쇄 메서드를 호출하려면 인스턴스 메서드 내에서 this.constructor.print(n)를 사용할 수 있습니다. как показано в printN.
클래스 이름 사용
두 번째 접근 방식은 클래스 이름을 통해 직접 정적 메서드를 호출하는 것입니다. 이전 예를 계속 진행합니다.
SomeObject.print(n);
상속 고려 사항
하위 클래스에서 정적 메서드를 재정의하는 경우 두 접근 방식은 서로 다른 의미를 가질 수 있습니다.
어떤 접근 방식을 선택해야 합니까?
가장 적합한 접근 방식은 원하는 동작에 따라 다릅니다. 자신이 속한 클래스를 항상 참조하는 정적 메서드를 원하는 경우 명시적인 클래스 이름을 사용하세요. 재정의된 정적 메서드가 사용되는 동적 디스패치를 선호하는 경우 this.constructor를 사용하세요.
위 내용은 ES6 클래스에서 정적 메서드를 호출하는 방법: 생성자 및 클래스 이름?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!