Sí, es correcto. Otra forma quizá más limpia (ya que no ensucias el html) es:
Código Javascript
:
Ver original<p class="demo" id="p1" >Otro p</p>
<p class="demo" id="p2" >Otro p2</p>
<p class="demo" id="p3" >Otro p3</p>
<div id="mostrar"></div>
<script>
function myFunction() {
this.style.color = 'gren';
var id = this.id;
document.getElementById('mostrar').innerHTML = id;
console.log(this);
}
var elems = document.getElementsByClassName("demo");
for (var i = 0, len = elems.length; i < len; i++) {
elems[i].addEventListener("click", myFunction, false);
}
Saludos!