diff --git a/01-js/hard/todo-list.js b/01-js/hard/todo-list.js index 7c9c1806..2f0b2039 100644 --- a/01-js/hard/todo-list.js +++ b/01-js/hard/todo-list.js @@ -1,18 +1,47 @@ -/* - Implement a class `Todo` having below methods - - add(todo): adds todo to list of todos - - remove(indexOfTodo): remove todo from list of todos - - update(index, updatedTodo): update todo at given index - - getAll: returns all todos - - get(indexOfTodo): returns todo at given index - - clear: deletes all todos - - Once you've implemented the logic, test your code by running - - `npm run test-todo-list` -*/ - class Todo { - +constructor(){ +this.arr=[]; +} + add(todo){ +this.arr.push(todo); +} + remove(indexOfTodo){ + if(indexOfTodo>=this.arr.length) + { + console.log('invalid index'); + return null; + } + else{ +// this.arr.splice(indexOfTodo,1); +for(var i=indexOfTodo; i=this.arr.length) + { + console.log('invalid index'); + return null; + } + else + this.arr[index]= updatedTodo; +} +getAll(){ +return this.arr; +} +get(indexOfTodo){ + if(indexOfTodo>=this.arr.length) + { + console.log('invalid index'); + return null; + } +return this.arr[indexOfTodo]; } +clear() +{ + this.arr=[]; +}} module.exports = Todo;