Kolejna część z nauki pisania kodu w języku JavaScript rozjaśni nieco dokładniej czym jest typ "undefined"JEST istotny powód, dla którego warto zrobić z tego osobny artykuł 😳. Klikaj i o nic nie pytaj 😁!

"UNDEFINED" W JĘZYKU JAVASCRIPT. DEFINICJA O NIEZDEFINIOWANYM...

"undefined". Ten "niezdefiniowany" typ danych możesz znaleźć w języku JavaScript i oznacza on...byt niezdefiniowany czy też nieokreślony. Fajnie. A coś więcej 🙂?

Jest to domyślny typ dla zmiennych, które nie otrzymały wartości w momencie ich deklaracji ℹ️. W tym języku to NIE JEST "null" jak mogłeś(-aś) pomyśleć. To "undefined". To działa jak "null", natomiast w gruncie rzeczy nim nie jest (choć w rzeczywistości istnieje):

undefined

Ponieważ jest to typ danych, mamy prawo go podstawiać do zmiennych, do instrukcji warunkowych, do całej reszty ✅.

LUBIMY PŁATAĆ FIGLE

Zanim błędnie stwierdzisz, że to koniec najważniejszych informacji o typie "undefined" w języku JavaScript, chcę przekazać coś bardzo ważnego! Możesz natrafić także na drugą tak jakby "odmianę" tego słowa, a mianowicie w postaci łańcucha znaków o takim wyglądzie 👇:

"undefined"

"undefined" w cudzysłowie, a "undefined" bez nich NIE SĄ SOBIE RÓWNE!!! To da wynik fałszywy:

console.log(undefined === "undefined");

Co więcej, oba te typy mogą inaczej wpływać na przebieg wykonywania programu ⚠️!!! Gdzie konkretnie widać różnicę? Podczas weryfikowania istnienia zmiennej o podanej nazwie wewnątrz instrukcji warunkowej ‼️!!!

Spójrz na taki przypadek. Chcemy zbadać czy jakaś zmienna istnieje w ogóle kodzie, a konkretniej czy jest niezdefiniowana (jest typu "undefined"). Możemy to zrobić używając dwóch postaci słowa "undefined" w języku JavaScript. Ta "pierwsza" bez cudzysłowów 👇:

console.log(x === undefined);

spowoduje przerwanie działania programu pod wpływem błędu "ReferenceError" ❌, co oznaczać będzie niemożność znalezienia zmiennej o podanej nazwie. Niefajnie narażać się na taką awarię, tylko dlatego, że nie znaleziono zmiennej 👎.

Jedyną "osłoną" jest deklaracja zmiennej i wtedy nic się nie wyłoży:

let x;

natomiast głupio tak pisać całą resztę na wyrost 😅. Wtedy pozostaje Ci użyć tej postaci w cudzysłowach, przy czym korzystamy dodatkowo ze słowa "typeof" 👇:

console.log(typeof x === "undefined");

To da taki skutek, że w przypadku nieznalezienia takowej zmiennej, nie stanie się nic złego ✅. Jeżeli podstawimy to do instrukcji warunkowej, wynik stanie się fałszywy, natomiast obejdzie się bez jakiegokolwiek błędu.

Zatem, oto wniosek końcowy: lepiej stosować wersję słowa "undefined" w języku JavaScript w cudzysłowach, w połączeniu z "typeof" 💡!

Słowo kluczowe "undefined" w języku JavaScript

"undefined" to niezdefiniowany typ danych przypisywany domyślnie zmiennym pozbawionym jakiejkolwiek wartości.


Teraz jest prawdziwy koniec! JavaScript ma niestety w sobie kilka odstępstw od wielu powszechnie stosowanych języków i trzeba zwracać baczną uwagę czy instrukcje pisane w takim samym stylu działają identycznie co w innym języku, już pozbawionym takich ceregieli.

PODOBNE ARTYKUŁY