JavaScript에서 개인 메소드 정의
JavaScript에서 클래스를 생성하면 함수와 데이터가 명확하게 구분됩니다. 공용 메소드는 쉽게 액세스할 수 있지만 클래스 내의 다른 메소드에서만 액세스할 수 있는 전용 메소드를 어떻게 정의합니까?
JavaScript에서 전용 메소드를 구현하려면 다음 접근 방식을 사용할 수 있습니다.
1. 전용 변수 선언:
생성자 함수 내에 전용 변수를 정의하여 클래스 내에서만 액세스할 수 있는 데이터를 저장합니다.
2. 비공개 함수 만들기:
클래스 프로토타입 외부에서 비공개 함수를 정의합니다. 이 함수들은 생성자 함수 범위 내에서만 접근 가능합니다.
3. 공용 메서드에서 개인 함수 호출:
공용 메서드는 개인 함수를 호출하여 개인 데이터에 액세스하고 특정 작업을 수행할 수 있습니다. 그러나 비공개 함수는 클래스 외부에서 직접 호출할 수 없습니다.
예:
<code class="javascript">function Restaurant() { var privateVar; // Private variable var privateFunction = function() { // Private function privateVar = "Private data"; } this.publicMethod1 = function() { // Public method privateFunction(); // Can call private function } this.publicMethod2 = function() { // Public method privateFunction(); // Can call private function } }</code>
이 예에서 privateFunction은 비공개 변수 privateVar의 값을 설정하는 비공개 함수입니다. 공용 메소드 publicMethod1 및 publicMethod2는 privateFunction을 호출하여 개인 데이터에 액세스할 수 있습니다. 그러나 외부 코드는 privateFunction을 직접 호출할 수 없습니다.
제한 사항:
이 접근 방식에는 한 가지 주요 제한 사항이 있습니다. 즉, 전용 메서드는 클래스 프로토타입에 포함될 수 없습니다. 이 означает, что ты는 객체 리터럴 단축 표기법을 사용하여 정의할 수 없습니다.
위 내용은 JavaScript 클래스에서 개인 메소드를 어떻게 정의합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!