Если жестоко утрировать то this указывает на тот объект что до точки:
a = {
b: {
c: {
d: {}
}
}
}
у функции вызванной как a.b.c.d() this будет a.b.c, вызваной как a.b() this будет a, у просто a() this будет window либо, в строгом режиме, вообще не будет.
Также у фунций которые срабатывают в ответ на событие: element.onclick=a;/element.addEventListener('click', a.b.c), this принудительно становится element.
Описание выше - "неправильное", но это всё что вам надо знать на начальному уровне. Иначе - читайте учебник.)