La delegación de eventos es útil cuando se trabaja con elementos dinámicos:
document.getElementById("lista").addEventListener("click", function(e) {
if (e.target.tagName === "LI") {
alert("Elemento clickeado: " + e.target.textContent);
}
});
Así no necesitas agregar eventos a cada elemento manualmente.