Co to jest kontekst wykonania w JavaScript

Co to jest kontekst wykonania w JavaScript
Być może kodujesz w JavaScript od dłuższego czasu i znasz wykorzystanie logiki dla każdej konkretnej operacji, ale czy kiedykolwiek myślałeś o tym, jak funkcja lub zmienna utrzymuje informacje związane z jej środowiskiem?

Silnik JavaScript wykonuje całą magię w tle, tworząc „Kontekst wykonania". Pozwala także silnikowi JavaScript kontrolować złożoność kodu dla zadania wykonania.

Ten zapis wyjaśni kontekst wykonania i jego typy w JavaScript. A więc zacznijmy!

Co to jest kontekst wykonania w JavaScript

W kontekście wykonania termin „Wykonanie”Odnosi się do procesu wykonywania kodu i„Kontekst”Określa środowisko do wykonania. Zatem zgromadzenie obu warunków, otrzymaliśmy definicję stwierdzającą, że kontekst wykonania zawiera informacje związane ze środowiskiem, w którym kod jest przechowywany i wykonywany.

Kontekst wykonania JavaScript zawiera trzy różne typy:

  • Globalny kontekst wykonania: Globalny kontekst wykonania JavaScript jest tworzony domyślnie.
  • Kontekst wykonania funkcji: Kontekst wykonywania funkcji jest tworzony, gdy funkcja jest wywoływana w dostarczonym kodzie.
  • Oceń kontekst wykonaniaT: A „eval ()„Funkcja tworzy kontekst wykonywania oceny.

Przejdziemy przez typy kontekstu wykonania w sekcjach poniżej danej poniżej.

Notatka: Używamy narzędzia do wizualizatora JavaScript opracowanego przez interfejs użytkownika.dev, aby wizualizować kontekst wykonania działający w JavaScript.

Globalny kontekst wykonania w JavaScript

Kiedy silnik JS wykonuje program, tworzy on początkowe kontekst wykonania. Ale wcześniej tworzy nowy kontekst wykonania znany jako „Globalny kontekst wykonania" albo "Domyślny kontekst". Być może wiesz, że JavaScript jest językiem jednokierunkowym, więc pozwala tylko na tworzenie jednego globalnego kontekstu wykonania na wykonanie kodu.

Otwórz wizualizator JavaScript i bez dodawania żadnego kodu kliknij „Uruchomić”Przycisk z lewej strony ekranu:

Jak widać, globalny kontekst wykonania jest domyślnie tworzony:

Każdy kontekst wykonania (w tym globalny kontekst wykonania) obejmuje następujące dwa obiekty:

  • Obiekt globalny: Obiekt globalny zawiera funkcje i zmienne dostępne w bieżącym środowisku. Jest to również określane jako „okno„Obiekt w przeglądarce.
  • Obiekt „ten”: „Ten”Słowo kluczowe wskazuje na bieżący obiekt w kontekście wykonania.

W poniższej sekcji omówiono różne fazy kontekstu globalnego wykonania w JavaScript.

Fazy ​​globalnego kontekstu wykonania w JavaScript

Istnieją dwie fazy globalnego kontekstu wykonania w JavaScript: kreacja I Wykonanie.

Faza tworzenia globalnego kontekstu wykonania w JavaScript

Jak wspomniano wcześniej, globalny kontekst wykonania jest domyślnie tworzony, gdy silnik JavaScript po raz pierwszy wykonuje skrypt lub program. Jest znany jako faza tworzenia kontekstu wykonania globalnego JavaScript.

Faza tworzenia globalnego kontekstu wykonania wykonuje następujące operacje:

  • Obiekt okna/globalny: W fazie tworzenia tworzenia jest obiekt globalny, który zawiera informacje związane z zmiennymi, funkcjami i ich wewnętrzną deklaracją.
  • ten obiekt: „Ten„Obiekt jest tworzony, który wskazuje na okno lub obiekt globalny.
  • Zmienne: W fazie tworzenia zmienne są inicjowane za pomocą „nieokreślony" wartość.
  • Funkcje: Funkcje są deklarowane i inicjowane w fazie tworzenia.

Teraz sprawdźmy działanie fazy tworzenia za pomocą przykładu.

Przykład: Faza tworzenia globalnego kontekstu wykonania w JavaScript

Utworzymy dwie zmienne, „X" I "y”, Posiadanie następujących wartości:

var x = 3;
var y = 2;

Następnie funkcja o nazwie „produkt”Jest zdefiniowane, które akceptuje„n1" I "n2„Parametry:

Produkt funkcyjny (N1, N2)
return n1 * n2;

Teraz dodamy powyższy kod w wizualizatorze JavaScript i klikniemy „Uruchomić„Opcja wyświetlenia globalnego kontekstu wykonania:

Kiedy silnik JS wykonuje dany program, będzie przechowywał i ustawił „X" I "y„Wartości zmiennej jako„nieokreślony”, A następnie zadeklaruj funkcję„produkt()”W kontekście globalnego wykonania:

Globalny kontekst realizacji zmierzy się w kierunku „Faza wykonania„Gdy faza tworzenia zakończy określone operacje.

Faza wykonania globalnego kontekstu wykonania w JavaScript

Podczas Faza wykonania, Silnik JS sekwencyjnie wykonuje kod, a następnie wykonuje operację przypisania wartości dla zmiennych i na koniec uruchamia dodane wywołania funkcji.

Kontekst wykonania funkcji w JavaScript

Nowy „Kontekst wykonania funkcji”Jest tworzony dla każdego wywołania funkcji. Kontekst wykonania funkcji zachowuje się podobnie do globalnego kontekstu wykonania; Jednak zamiast deklarować „obiekt globalny”, Silnik JavaScript utworzy„argumenty„Obiekt, który zawiera referencje dotyczące parametrów funkcji.

Przykład: Kontekst wykonania funkcji w JavaScript

W tym samym przykładzie dodamy następujący wiersz, aby wywołać „produkt()”Funkcja podczas przekazywania„X" I "y„Jak jego argumenty:

produkt(X,y);

Wizualizator JavaScript pokaże zmiany w kontekście globalnego wykonania:

Teraz tworzony jest nowy kontekst wykonania funkcji, który obejmuje fazy tworzenia i wykonywania. Ma również unikalny obiekt o nazwie „argumenty". Wartość przekazana do „produkt()”Funkcja jest dodawana w obiekcie argumentów:

Oceń kontekst wykonania w JavaScript

W JavaScript „The„eval ()”Funkcja przekształca ciąg w kod wykonywalny. Gdy ta metoda zostanie dodana do programu JavaScript, tworzy własną „Oceń kontekst wykonania". Deweloperzy JavaScript nie używają „eval ()”Funkcjonowanie, jak przekazany do niego ciąg może być złośliwy, powodując awarię aplikacji lub bazy danych. W rezultacie funkcja oceny została przestarzała.

Podaliśmy wszystkie niezbędne informacje dotyczące Kontekst wykonania W JavaScript. Możesz go dalej odkrywać zgodnie z Twoimi wymaganiami.

Wniosek

Kontekst wykonania jest tworzony, gdy silnik JavaScript wykonuje kod JavaScript i ma trzy typy: Światowy, Funkcjonować, I ocenia Kontekst wykonania. Obejmuje również dwie fazy: kreacja I Wykonanie. Faza tworzenia jest tworzony, gdy program działa po raz pierwszy, podczas gdy w Faza wykonania, określone wartości są przypisywane do zmiennych i wywoływane są dodane funkcje. Ten zapis wyjaśnił kontekst wykonania i jego typy w JavaScript.