Vi lo siguiente en la fuente de WebKit HTML 5 SQL Storage Notes Demo :
function Note() {
var self = this;
var note = document.createElement('div');
note.className = 'note';
note.addEventListener('mousedown', function(e) { return self.onMouseDown(e) }, false);
note.addEventListener('click', function() { return self.onNoteClick() }, false);
this.note = note;
// ...
}
El autor usa self en algunos lugares (el cuerpo de la función) y esto en otros lugares (los cuerpos de las funciones definidos en la lista de argumentos de los métodos). ¿Que esta pasando? Ahora que lo he notado una vez, ¿comenzaré a verlo en todas partes?
this
dentro de una devolución de llamada?")