/* eslint-disable */
// 3
//
// 4
// let todos = [
// { id: 3, content: 'HTML', completed: false },
// { id: 2, content: 'CSS', completed: true },
// { id: 1, content: 'Javascript', completed: false }
// ];
// function addTodo(newTodo) {
// todos = [newTodo, ...todos];
// return todos;
// }
// addTodo({ id: 4, content: 'Test', completed: false });
// console.log(todos);
/*
[
{ id: 4, content: 'Test', completed: false },
{ id: 3, content: 'HTML', completed: false },
{ id: 2, content: 'CSS', completed: true },
{ id: 1, content: 'Javascript', completed: false }
]
*/
// 5
// let todos = [
// { id: 3, content: 'HTML', completed: false },
// { id: 2, content: 'CSS', completed: true },
// { id: 1, content: 'Javascript', completed: false }
// ];
// function removeTodo(id) {
// todos = todos.filter(todo => todo.id !== id);
// return todos;
// }
// removeTodo(2);
// console.log(todos);
// 6
// let todos = [
// { id: 3, content: 'HTML', completed: false },
// { id: 2, content: 'CSS', completed: true },
// { id: 1, content: 'Javascript', completed: false }
// ];
// function toggleCompletedById(id) {
// todos = todos.find(todo => todo.id === id);
// todos.completed = !todos.completed;
// return todos;
// }
// toggleCompletedById(2);
// console.log(todos);
// let todos = [
// { id: 3, content: 'HTML', completed: false },
// { id: 2, content: 'CSS', completed: true },
// { id: 1, content: 'Javascript', completed: false }
// ];
// function toggleCompletedById(id) {
// let arr = todos.find(todo => todo.id === id);
// }
// toggleCompletedById(2);
// console.log(todos);
// 7
// let todos = [
// { id: 3, content: 'HTML', completed: false },
// { id: 2, content: 'CSS', completed: true },
// { id: 1, content: 'Javascript', completed: false }
// ];
// function toggleCompletedAll() {
// return todos.map(todo => todo['completed'] = true);
// }
// toggleCompletedAll();
// console.log(todos);
// 8
// let todos = [
// { id: 3, content: 'HTML', completed: false },
// { id: 2, content: 'CSS', completed: true },
// { id: 1, content: 'Javascript', completed: false }
// ];
// function countCompletedTodos() {
// return todos.reduce((prev, curr) => curr['completed'] === true ? ++prev : prev , 0)
// }
// console.log(countCompletedTodos()); // 1
// let todos = [
// { id: 3, content: 'HTML', completed: false },
// { id: 2, content: 'CSS', completed: true },
// { id: 1, content: 'Javascript', completed: false }
// ];
// function countCompletedTodos() {
// return todos.filter(todo => todo['completed'] === true).length;
// }
// console.log(countCompletedTodos()); // 1
// 9
// let todos = [
// { id: 3, content: 'HTML', completed: false },
// { id: 2, content: 'CSS', completed: true },
// { id: 1, content: 'Javascript', completed: false }
// ];
// function getMaxId() {
// return todos.length ? Math.max(...todos.map(todo => (todo['id'])) : 0
// }
// console.log(getMaxId()); // 3
// 6
// let todos = [
// { id: 3, content: 'HTML', completed: false },
// { id: 2, content: 'CSS', completed: true },
// { id: 1, content: 'Javascript', completed: false }
// ];
// function toggleCompletedById(id) {
// return todos.map(todo => todo.id === id ? todo.completed = !todo.completed : todo.completed);
// }
// toggleCompletedById(2);
// console.log(todos);
// Object.assign({}, todo, {completed : !todo.completed});
let todos = [
{ id: 3, content: 'HTML', completed: false },
{ id: 2, content: 'CSS', completed: true },
{ id: 1, content: 'Javascript', completed: false }
];
function toggleCompletedById(id) {
return todos = todos.map(todo => todo.id === id ? {...todo, completed : !todo.completed} : todo);
}
toggleCompletedById(2);
console.log(todos);
// let todos = [
// { id: 3, content: 'HTML', completed: false },
// { id: 2, content: 'CSS', completed: true },
// { id: 1, content: 'Javascript', completed: false }
// ];
// function toggleCompletedAll() {
// todos = todos.map(todo => todo.completed === false ? {...todo, completed : !todo.completed} : todo);
// }
// toggleCompletedAll();
// console.log(todos);
let todos = [
{ id: 3, content: 'HTML', completed: false },
{ id: 2, content: 'CSS', completed: true },
{ id: 1, content: 'Javascript', completed: false }
];
function getMaxId() {
return todos.reduce((acc, cur) => acc > cur.id ? acc : cur.id, 0);
}
console.log(getMaxId()); // 3