initialSpeed не обновляется, сначала отображается как неопределенное, а затем как NaN.
методы start () и calcSpeed () прекрасно работают вне класса.
class Transportation {
kind: string;
speed: number;
initialSpeed: number = 0;
constructor(kind: string, speed:number) {
this.kind = kind;
this.speed = speed;
}
start() {
let begin = setInterval(this.calcSpeed, 1000);
}
calcSpeed() {
console.log("initial speed: ", this.initialSpeed);
return this.initialSpeed = this.speed + this.initialSpeed;
}
}
let car = new Transportation("car", 50);
console.log(car);
car.start();
Он должен показывать 0 и каждую секунду увеличиваться на 50.
Вместо этого он показывает неопределенный и каждую секунду после этого как NaN.
Я пробовал Number () и toString () на всякий случай, но не сработало.