Cita: y sobre lo de this, pensé que definida ahí hacía referencia al elemento windows ...
se debe al concepto de
late o dynamic binding. en resumen, mas o menos lo que quiere decir es que hay implementaciones que se determinan en tiempo de ejecucion. en español, hay ciertas referencias que se determinan en tiempo de ejecucion. preguntate por ejemplo, ¿que sucede si asignamos una funcion nativa del objeto documento a una variable global y luego la invocamos desde la variable? es decir,
Código:
var escribir = document.write;
escribir('contenido');