Egzamin zawodowyPortal części pisemnej

INF.04 · pytanie 111

Co oznacza pojęcie 'hoisting' w JavaScript?

  1. AProces podnoszenia deklaracji zmiennych i funkcji na górę zakresuPoprawna
  2. BMetoda ładowania skryptów z zewnętrznych źródeł
  3. CTechnika optymalizacji kodu przez silnik JavaScript
  4. DMechanizm zarządzania pamięcią w przeglądarce

Wyjaśnienie

Hoisting to mechanizm w JavaScript, który polega na tym, że deklaracje zmiennych i funkcji są przenoszone na górę zakresu, w którym zostały zadeklarowane. Oznacza to, że możesz używać zmiennych i funkcji przed ich faktyczną deklaracją w kodzie. Na przykład, jeśli zadeklarujesz zmienną za pomocą 'var' lub funkcję, możesz odwołać się do niej wcześniej, a JavaScript zrozumie, o co chodzi. Przykład: jeśli napiszesz 'console.log(x); var x = 5;', to nie dostaniesz błędu, ponieważ 'x' jest hoistowane na górę, jednak jej wartość będzie 'undefined' do momentu przypisania jej wartości. Zrozumienie hoistingu jest kluczowe dla pisania poprawnego kodu w JavaScript, ponieważ może to prowadzić do zaskakujących rezultatów. Warto wiedzieć, że hoisting nie działa w ten sam sposób dla deklaracji 'let' i 'const'. Te zmienne są hoistowane, ale nie mogą być używane przed ich deklaracją, co prowadzi do błędu 'Temporal Dead Zone'. Dlatego zaleca się unikanie deklaracji zmiennych w sposób, który może prowadzić do nieporozumień, i zawsze deklarować zmienne na początku zakresu, w którym będą używane.