Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Programowanie webowe Algorytmy i podstawy informatyki JavaScript

Słowa kluczowe: Identyfikatory w JavaScript

W języku JavaScript poprawnie nadana zmienna to

A. imię%
B. #imie
C. imie2
D. 2imie

Opracowane na podstawie zadania CKE, wrzesień 2015 (arkusz E.14-X-15.08): Odpowiedź „imię2” zamieniona na „2imie”: JavaScript dopuszcza polskie litery w nazwach zmiennych, więc w arkuszu poprawne były dwie odpowiedzi.

Odpowiedź imie2 jest poprawna, bo w JavaScript identyfikator zmiennej może zaczynać się od litery, znaku podkreślenia _ albo znaku dolara $, a dalsze znaki mogą zawierać także cyfry. Dlatego nazwa imie2 spełnia zasady składni języka: zaczyna się od litery i dopiero później ma cyfrę. W praktyce można napisać np. let imie2 = 'Adam'; albo const cena2 = 49.99; i interpreter JavaScript potraktuje to jako poprawną deklarację. Moim zdaniem warto od razu wyrabiać sobie nawyk używania czytelnych nazw, np. imieUcznia, liczbaProduktow, cenaNetto, bo sam fakt, że nazwa jest technicznie poprawna, nie znaczy jeszcze, że jest dobra w projekcie. Standard ECMAScript dopuszcza też znaki Unicode w identyfikatorach, ale w branżowej praktyce najczęściej stosuje się litery alfabetu łacińskiego bez polskich znaków, żeby uniknąć problemów przy współpracy, konfiguracji narzędzi, kopiowaniu kodu i czytaniu go przez innych programistów. Dobra nazwa zmiennej powinna być poprawna składniowo, zrozumiała i zgodna z przyjętą konwencją, np. camelCase w JavaScript.
W nazwach zmiennych JavaScript obowiązują konkretne reguły składniowe i łatwo tu pomylić nazwę widoczną dla człowieka z identyfikatorem akceptowanym przez interpreter. Znak # na początku nie tworzy zwykłej zmiennej. W nowoczesnym JavaScript taki znak pojawia się przy prywatnych polach klas, np. wewnątrz definicji klasy można spotkać zapis #imie, ale to nie jest standardowa nazwa zmiennej deklarowanej przez let, const albo var. Próba zapisania let #imie = 'Anna'; zakończy się błędem składni. To częsta pułapka, bo ktoś kojarzy # z identyfikatorami z CSS albo z hashtagami, ale JavaScript ma własną gramatykę. Nazwa zaczynająca się od cyfry również jest niepoprawna, ponieważ parser odczytuje początek takiego zapisu jak liczbę, a nie jak identyfikator. Dlatego 2imie nie może być nazwą zmiennej, choć cyfra na końcu, jak w imie2, jest już dozwolona. Zapis imię% też nie przejdzie jako nazwa zmiennej. Sama litera ę może być dopuszczalna przez standard ECMAScript, bo identyfikatory mogą korzystać z wielu znaków Unicode, ale znak procenta % jest operatorem arytmetycznym modulo, a nie elementem nazwy. Z mojego doświadczenia najlepiej trzymać się prostych, czytelnych nazw bez znaków specjalnych: imie, imie2, imieUcznia. Kod jest wtedy łatwiejszy do debugowania, mniej zależny od ustawień edytora i bardziej zrozumiały dla zespołu.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.