title: Strange syntax issue with bind()
body: <p>Why is it that in this example myFunction1 throws syntax error and myFunction2 works well? Shouldn't they be all the same?</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>(function(){
    function MyClass(){
      this.val = "myVal";
      this.myFunction1();
      this.myFunction2();
    }
  
    MyClass.prototype.myFunction1 = function(){
      function otherFn() {
        console.log(this.val);
      }.bind(this);
      otherFn();
    }
  
    MyClass.prototype.myFunction2 = function(){
      var otherFn= function() {
        console.log(this.val);
      }.bind(this);
      otherFn();
    }
  
    var ins = new MyClass();
   })();</code></pre>
  </div>
  </div>
  </p>