I have seen this pattern in several answers from some of the brightest minds on this site so I know there is a reason.

For the life of me though I do not seem to understand why this would need to be done:

[Lightning Components in Visualforce - Unable to read sobject](https://salesforce.stackexchange.com/questions/112636/lightning-components-in-visualforce-unable-to-read-sobject/112638#112638)

```
var self=this;
action.setCallback(this, function(response) {
        self.actionResponseHandler(response, cmp, self, self.sentAccount);
});

```

What is the purpose of `self` instead of just using `this`