2016-07-29 4 views
1

아래 코드를 사용하면 Parent 클래스에서 bar()에 액세스하려면 어떻게해야합니까?하위 클래스의 ES6 액세스 기능

class Parent{ 
    constructor(){ 

    } 

    foo(){ 
     this.bar() // not defined 
    } 
} 

class Child extends Parent{ 
    constructor(){ 
     super(); 
    } 

    bar(){ 

    } 
} 
+1

'Parent' 클래스는 알 수 없습니다 그것을 확장시키는'Child'에 관한 것. –

+0

@DmitriPavlutin하지만 그건 슬픈 일입니다. 어쨌든 고마워요 :) – CENT1PEDE

+0

그리고 그 아이가 부모에 관한 모든 것을 알고 있다고 언급 할 가치가 있습니다 –

답변

0

당신은 당신이 한 것과 똑같이 액세스 할 수 있지만, 실제로 this 정의 할 수 있도록 당신이 아닌이 Parent 하나 Child 인스턴스를 만들 수 있습니다

var c = new Child(); 
c.bar() // works 
c.foo() // calls c.bar() as well 
+0

그래, 네 말이 맞아, 내 질문이 잘못되었다고 생각해. 미안. 필자가 필요로하는 정확한 사용 사례는'Parent' 클래스 안에서 사용하는 것입니다. 나는 미안하게 다시 질문을 갱신했다. – CENT1PEDE

+0

@TheGreenFoxx :'Parent' 인스턴스에'bar'가 필요한 경우,'Parent' 클래스에 메소드를 선언해야합니다. 'Child.prototype.bar'를 직접 참조하는 것이 가능하지만,'Parent'에서 그것의 사용법은 모든 우수 실행 및 설계 원칙에 위배됩니다. – Bergi

관련 문제