Ich habe Probleme, einen Konstruktor für Unterklassen in JS zu machen. Die Konstruktoren für Klassen funktionieren jedoch gut!Wie definiert man Unterklassenkonstruktoren in Javascript (ES6) richtig?
//defining base class State
class State {
constructor(){
this.someText = "someText";
}
start(){
}
update(){
}
exit(){
}
}
//defining subclass preloadState
class preloadState extends State{
constructor(){
this.ball = "red";
}
start(){
console.log(this.ball);
}
}
var state = new preloadState;
state.start();
}
Wenn der Code ausgeführt wird, erhalte ich die Fehler this.ball
nicht in der preloadState Klasse definiert ist. Warum ist das so?
Great! Genau was ich wollte. Folgefragen: 1. Ist this.ball über alle Funktionen in preloadState erreichbar? 2. Wie würde ich eine Instanz von preloadState in einer Funktion übergeben? – PixelProgrammer
Gut! 1: Ja, in allen Methoden, die Sie nach 'preloadState.start()' aufrufen. 2: Ich verstehe diese Frage nicht. – Pimmol
2. Angenommen, ich habe ein Objekt mit preloadState: 'var state = new preloadState()'. Nun sage ich, dass ich 'state.start()' in einer anderen Funktion verwenden möchte. 'function foo (state) {state.start()}'. Wird das möglich sein? Kann ich ein Klassenobjekt in einer anderen Funktion übergeben? – PixelProgrammer