{"ScriptPreparationCode":null,"TestCases":[{"Name":"map","Code":"function updateTodo(update, list) {\r\n console.log(\u0027LIST\u0027, list);\r\n const updatedAt = new Date().toISOString();\r\n return list.map((item) =\u003E\r\n item.id === update.id ? { ...item, ...update, updatedAt } : item\r\n );\r\n}\r\nconst update = {id: 5, done: true}\r\nconst list = [{id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 5, done: false}]\r\nconst other = updateTodo(update, list)","IsDeferred":false},{"Name":"findIndex \u0026 spread","Code":"function updateTodo(update, list) {\r\n const updatedAt = new Date().toISOString();\r\n const indexToUpdate = list.findIndex((item) =\u003E item.id === update.id);\r\n const newList = [...list];\r\n newList[indexToUpdate] = { ...newList[indexToUpdate], ...update, updatedAt };\r\n return newList;\r\n}\r\nconst update = {id: 5, done: true}\r\nconst list = [{id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 5, done: false}]\r\nconst other = updateTodo(update, list)","IsDeferred":false},{"Name":"findIndex \u0026 slice","Code":"function updateTodo(update, list) {\r\n const updatedAt = new Date().toISOString();\r\n const indexToUpdate = list.findIndex((item) =\u003E item.id === update.id);\r\n const newList = list.slice();\r\n newList[indexToUpdate] = { ...newList[indexToUpdate], ...update, updatedAt };\r\n return newList;\r\n}\r\nconst update = {id: 5, done: true}\r\nconst list = [{id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 1, done: false}, {id: 5, done: false}]\r\nconst other = updateTodo(update, list)","IsDeferred":false}]}