¿Qué subyace a este lenguaje JavaScript: var self = this?


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 this en otros lugares (los cuerpos de funciones definidos en la lista de argumentos de métodos). ¿Qué está pasando? Ahora que lo he notado una vez, ¿empezaré a verlo en todas partes?


Warning: Undefined property: agent_blog_content::$date_asked in /var/www/agent_etc/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 32

Warning: Undefined property: agent_blog_content::$count_answers in /var/www/agent_etc/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 52