function() {}.bind(this) -> this.function(){} ?

John J Barton johnjbarton at johnjbarton.com
Thu Dec 29 10:54:44 PST 2011


Sorry if this has been suggested before....

I've stopped using the 'self=this' trick:
   ...
   var self = this;
   window.addEventListener('load', function(event) {
     self.foo();
   }, false);

in favor of bind():
   ...
   window.addEventListener('load', function(event) {
     this.foo();
   }.bind(this), false);

It's fine, but I wonder if such code would be clearer if we could write:
   ...
   window.addEventListener('load', this.function(event) {
     this.foo();
   }, false);

To me at least this more closely expresses my intent: I want an anonymous
method of 'this' object, not an anonymous function.

jjb
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20111229/4258022d/attachment.html>


More information about the es-discuss mailing list