title: "This" within es6 class method
body: <p>For some reason I'm getting weird values for "this" in my es6 class...</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false">
  <div class="snippet-code">
  <pre class="snippet-code-js lang-js prettyprint-override"><code>'use strict';
  class Clicker {
    constructor(element) {
      this.count = 0;
      this.elem = element;
      this.elem.addEventListener('click', this.click);
      
      // logs Clicker { count:0, elem: button#thing} as expected
      console.log(this);
    }
  
    click() {
      // logs &lt;button id="thing"&gt;...&lt;/button&gt; as unexpected...
      console.log(this);
      this.count++;
    }
  }
  
  
  var thing = document.getElementById('thing');
  var instance = new Clicker(thing);</code></pre>
  <pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;button id="thing"&gt;Click me&lt;/button&gt;</code></pre>
  </div>
  </div>
  </p>
  
  <h2>Question:</h2>
  
  <p>Why is the "this" inside of of the Clickers' click method referring to the dom node rather than ... itself? </p>
  
  <p>More importantly, how do I refer to Clickers' count property from within its' click method if I can't use "this" to do it?</p>