Возвращая Нэн, пока все мои значения имеют числовой тип - PullRequest
0 голосов
/ 31 мая 2019

Я делаю функцию сводки, которая будет отображать сводку myToDos, но в консоли она показывает: «У вас сегодня встречи NaN!» пока я использую все переменные числового типа.

let myTodos={
    day: 'Monday',
    meetings: 0,
    meetDone: 0,

    addMeeting: function(num){
        this.meetings = this.meetings + num;  
    },
    meetDone: function(meet=0) {
        this.meetDone = this.meetDone + meet;
    },
    resetDay: function(){
        this.meetings = 0;
        this.meetDone = 0;
    },
    summary: function(){
        let leftmeetings = this.meetings - this.meetDone;
        return `You have ${leftmeetings} meetings today!`
    }
}

myTodos.addMeeting(5);
myTodos.meetDone(3);
console.log(myTodos.summary());

Я ожидаю вывод как

1011 * Javascript *

"You have 2 meetings today!"

1 Ответ

3 голосов
/ 31 мая 2019

Как уже упоминалось в комментариях, у вас есть повторяющиеся свойства.

Переименование meetDone в done устранит конфликт.

let myTodos = {
  day: "Monday",
  meetings: 0,
  done: 0,

  addMeeting: function(num) {
    this.meetings = this.meetings + num;
  },
  meetDone: function(meet = 0) {
    this.done = this.done + meet;
  },
  resetDay: function() {
    this.meetings = 0;
    this.meetDone = 0;
  },
  summary: function() {
    let leftmeetings = this.meetings - this.done;
    return `You have ${leftmeetings} meetings today!`;
  }
};

myTodos.addMeeting(5);
myTodos.meetDone(3);
console.log(myTodos.summary());

Вывод:

Сегодня у вас 2 встречи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...