Uncaught TypeError: Невозможно прочитать свойство «завершено» из неопределенного в Object.toggleCompleted - PullRequest
0 голосов
/ 30 сентября 2019

Я пытаюсь выяснить, что не так с моим методом toggleCompleted. Ошибка гласит:

'Uncaught TypeError: Cannot read property 'completed' of undefined
at Object.toggleCompleted (script.js:23)
var todoList = { 
  todos: [],
  displayTodos: function () {
    console.log('My Todos:', this.todos);
  },
  addTodo: function(todoText) {
    this.todos.push({ 
      todoText: todoText,
      completed: false
    });
    this.displayTodos();
  },
  changeTodo: function(position, todoText) {
    this.todos[position].todoText = todoText;
    this.displayTodos();
  },
  deleteTodo: function(position) {
    this.todos.splice(position, 1);
    this.displayTodos();
  },
  toggleCompleted: function(position) {
  var todo = this.todos[position]; // This is the line that is giving me issues
  todo.completed = !todo.completed; 
  this.displayTodos();
  }
};

Я ожидаю, что объект отобразит две вещи: что функция todoList.toggleCompleted позволяет мне вставить любую строку, которую я хочу, и когда я ввожу строку, отображается завершенное свойствоtrue.

Я хотел бы знать, как решить проблему. Я вызываю метод следующим образом: todoList.toggleCompleted ('hello there');

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