質問
addEventListenerで、クリックした要素そのもの(id未指定)を受け取るには、どうすれば良いでしょうか?
・渡す側で何とかしてループ処理するしかない?

現状
・onclick

<div id="area">
  <button onclick="hoge(this);">1</button>
  <button onclick="hoge(this);">2</button>
</div>

<script>
  function hoge(obj) {
    console.log(obj);
  }
</script>



やりたいこと
・addEventListenerで、クリックした要素(divではなくbutton)を受け取りたい

<div id="area">
  <button>1</button>
  <button>2</button>
</div>

<script>
  function hoge() {
    console.log(this); 
    //ここでクリックした要素(divではなくbutton)を受け取りたい
  }
  var el = document.getElementById("area");
  el.addEventListener("click",hoge, false);
</script>



その他
・buttonタグには、id名class名を付与しない
・buttonタグは動的生成のため、階層構造は変化する(生成の度に前後にノードを挿入する可能性あり)