No exemplo, o professor está usando uma arrow function com o event (e) como parâmetro, por conta disso que é necessário utilizar o target ? Pois como a arrow function tem escopo global, caso ele não defina o .target., o browser nunca saberia a qual evento responder, é isso mesmo ?
Caso ele usasse somente a function(), por ela não ter um escopo global, o código poderia ficar e.error, por exemplo ?