2014-07-08 4 views
1

JavaScript로되어 있습니다.자바 스크립트 부모 클래스에서 자식 값 설정

아래에 핸들 클래스를 인스턴스화하는 메인 개체가 있습니다.

function Main() { 

    this.changeMe = 1; 

    this.init = function() { 
    handle = new Handle(); 
    handle.setMe(); 

    } 
}; 

function Handle() { 
    this.setMe = function() { 
    // parent::changeMe = 2; <-- How would I change the parent value?  
    } 
}; 

var app = new Main(); 
main.init(); 
console.log(main.changeMe); <-- How do I get that to 2? 

는 내가 부모 값을 변경하는 방법을 알아 내려고 노력하고 있어요 .. 주위에 방법이없는 한 - 나는 프로토 타입을 피했다 이유는 상속을 통해 구성을 선호합니다. 어떻게 아십니까?

+1

는'Handle'이 Main''에서 상속되지 않은 시도)를'Handle()'이니셜 라이저에 추가하여 재귀 부모/자식 접근자를 제공하지만 그 종류의 점을 무시하십시오 – newfurniturey

+2

http://jsfiddle.net/4ag6v/1/ – adeneo

+0

맞습니다. Adeno! – JREAM

답변

0

여기서 초기화 코드가 잘못되었습니다. 구문 오류 ... 초기화되지 않은 'main'변수에서 앱 변수에 액세스하려고하지만 Main 변수의 새 객체를 app 변수에 생성하려고합니다.

... 당신은 원형`Main``의 this` (인스턴스를 통과 할 수 있도록 기술적으로`Main`는 부모없는,

var app = new Main(); 
app.init(); 
console.log(app.changeMe); 
관련 문제