title: When using React Is it preferable to use fat arrow functions or bind functions in constructor?
body: <p>When creating a React class, which is preferable?</p>
  
  <pre><code>export default class Foo extends React.Component {
    constructor (props) {
      super(props)
      this.doSomething = this.doSomething.bind(this)
    }
  
    doSomething () { ... }
  }
  </code></pre>
  
  <p>or</p>
  
  <pre><code>export default class Foo extends React.Component {
    doSomething = () =&gt; { ... }
  }
  </code></pre>
  
  <p>A coworker of mine thinks that the latter causes memory problems because babel transpiles the code to capture <code>this</code> inside the closure, and that reference will cause the instance to not be cleaned by GC.</p>
  
  <p>any thoughts about this?</p>