Possible Duplicate:
set attribute with javascript super method- 자바 스크립트
나는 재미를 위해 HTML5의 간단한 게임을 만들려고하고 있습니다. Player 클래스의 수퍼 클래스가되어야하는 Entity 클래스가 있습니다.
function Entity(x, y) {
this.x = x;
this.y = y;
this.tick = function() {
//Do generic stuff
}
}
function Player(x, y) {
this.parent.constructor.call(this, x, y);
this.tick = function() {
//Do player-specific stuff
this.parent.tick.call(this);
}
}
Player.prototype = new Entity();
Player.prototype.constructor = Player;
Player.prototype.parent = Entity.prototype;
문제는이 라인에있다 : "정의의 '전화'방법을 호출 할 수 없습니다 catch되지 않은 형식 오류 :"
this.parent.tick.call(this);
내가 크롬의 자바 스크립트 콘솔에 표시되는 오류가 발생합니다.
나는 그것을 얻지 않으며 나는 유사한 문제점의 포스트를 찾아내는 것을 시도했다. 수퍼 클래스의 생성자에 대한 호출이 정상적으로 작동하지만 수퍼 클래스의 틱 메서드에 대한 호출이 작동하지 않습니다.
저는이 게임이 서브 클래스 틱에서 슈퍼 클래스 틱을 호출하는지 잘 모르기 때문에 새로운 게임을 만드는 것에 익숙합니다. 사람들이 사용하는 더 좋고 더 일반적인 방법이 있다면 알려주십시오.
감사합니다.
프로토 타입에 일반 항목이없는 이유는 무엇입니까? 거기에 쉽게 접근 할 수 있습니다. – Bergi
javascript에는 java와 같은 다른 고전 언어에서 사용되는 것처럼 고전적인 상속이 없습니다. 프로토 타입 상속을 읽고 고전적인 상속과의 차이점을 알아야합니다. – Christoph