--- title: Execution Context --- To abstrakcyjny koncept środowiska w którym **interpretowany i wykonywany jest kod [[Wiedza/Programowanie/JavaScript/JavaScript]]**. Za każdym razem gdy uruchamiamy kod JS, dzieje się to w [[Wiedza/Programowanie/JavaScript/Zakres/Execution Context]] Wyróżniamy trzy rodzaje kontekstu wykonania: - Globalny - istnieje tylko jeden w programie [[Wiedza/Programowanie/JavaScript/JavaScript]] - Funkcyjny - tworzony jest w chwili wykonania funkcji. Każda funkcja posiada swój kontekst wykonania. - Eval - kod wykonywany wewnątrz funkcji Eval również posiada swój kontekst. Konteksty wykonania przechowywane są w tzw. [[Execution Stack]] do którego domyślnie trafia Globalny kontekst a następnie według zasady LIFO (last in, first out), pozostałe konteksty zostają do niego dodawane oraz usuwane.