Код выдает NaN почему?

97
25 ноября 2020, 22:30

function Accumulator(startingValue){ 
  this.startingValue = startingValue; 
  this.read = function(){ 
    this.a = +prompt('Сколько будем прибавлять?', ''); 
  }; 
  this.value = 0 + this.a; 
}; 
 
var accumulator = new Accumulator(1); 
 
 
accumulator.read(); 
console.log( accumulator.value); 

  1. Создаем функцию конструктор с параметром startingValue
  2. В теле функции ссылаемся на объект которому даем свойство startingValue
  3. startingValue присваиваем аргумент 1
  4. ссылаемся на объект которому даем функцию read
  5. В read создаем +prompt которое спрашивает число
  6. ссылаемся на объект которому даем свойство value
  7. value присваиваем число 0 + число которое вел пользователь
  8. Получать должны число
  9. А по факту получаем NaN

function Accumulator(startingValue) { 
  this.value = startingValue; 
 
  this.read = function() { 
    this.value += +prompt('Сколько добавлять будем?', 0); 
  }; 
 
} 
 
var accumulator = new Accumulator(1); 
accumulator.read(); 
accumulator.read(); 
alert( accumulator.value );

  1. В втором примере кода получаем число Прошу объяснить ошибку

P.S Спасибо за внимание

READ ALSO