Minęło już trochę czasu, od kiedy jeden z moich kolegów zadał mi pytanie: „Dlaczego wszędzie w kodzie używamy var self = this;?”. Pamiętam, że wtedy, jeszcze jako JavaScript-nowicjusz, dumnie odpowiedziałam: „Jak to dlaczego? Przecież kontekst się zmienia!”. Teraz wiem, że wtedy sama do końca nie rozumiałam, co to tak naprawdę znaczy. Oswojenie się z mechanizmami języka JavaScript, w szczególności z pojęciami zasięgu leksykalnego (ang. lexical scope) i kontekstu (ang. context), zajęło mi trochę czasu, a jeszcze więcej potrzebowałam, żeby wyrobić sobie własną opinię o tym, czy naprawdę var self = this; jest niezbędne.