What don’t you understand about JavaScript?

Posted by

JavaScript – czego nie rozumiesz

JavaScript – czego nie rozumiesz

JavaScript jest jednym z najpopularniejszych języków programowania używanych do tworzenia interaktywnych stron internetowych. Pomimo swojej popularności, może być trudny do zrozumienia dla niektórych osób. Poniżej wymienione zostały pewne koncepty, które mogą sprawić problem początkującym programistom JavaScript.

Asynchroniczność

Jedną z najczęstszych trudności jest zrozumienie asynchroniczności w JavaScript. Wiele operacji w JavaScript odbywa się asynchronicznie, co oznacza, że kod nie jest wykonywany w kolejności, w jakiej się go napisało. Warto zrozumieć jak działają funkcje zwrotne (callbacks), obietnice (promises) i async/await w celu zarządzania asynchronicznymi operacjami.

Zasięg zmiennych

Inna trudność stanowi zrozumienie zasięgu zmiennych w JavaScript. Zmienne mogą mieć globalny zasięg, funkcje mogą mieć swoje zasięgi oraz zasięg blokowy w przypadku zmiennych let i const. Pamiętaj, że zmienna zdefiniowana wewnątrz funkcji będzie dostępna tylko wewnątrz tej funkcji.

Typowanie dynamiczne

JavaScript jest językiem z typowaniem dynamicznym, co oznacza, że nie trzeba deklarować typu danej zmiennej podczas jej tworzenia. Może to prowadzić do problemów związanych z nieprawidłowym typowaniem i błędami podczas działania programu. Warto zrozumieć jak działa konwersja typów oraz korzystać z operatorów porównania (===, !==) w celu uniknięcia niepożądanych zachowań.

Prototypy i dziedziczenie

Koncepcje prototypów i dziedziczenia mogą być trudne do zrozumienia dla osób mających doświadczenie w innych językach programowania. W JavaScript dziedziczenie odbywa się poprzez łańcuch prototypów, a każdy obiekt ma odwołanie do swojego prototypu. Warto zapoznać się z mechanizmem dziedziczenia w JavaScript oraz korzystać z metod Object.create() i Object.setPrototypeOf() do tworzenia obiektów.

Podsumowując, JavaScript może być trudnym językiem programowania do opanowania ze względu na swoje zaawansowane koncepcje. Jednakże z odpowiednim poświęceniem czasu i wysiłkiem można osiągnąć zaawansowaną znajomość tego języka i tworzyć zaawansowane aplikacje internetowe.

0 0 votes
Article Rating
20 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
@TadeuszKurpiel
7 months ago

czas 3:48 "minus 2 byłaby odwrotnością 2" – NIE proszę pana – odwrotnością 2 jest 1/2, a '-2' to liczba PRZECIWNA do 2

@arturgreziak5443
7 months ago

Pytanie magiczne kiedy i ile może kosztować pełen kurs JavaScript?

@radeksiek1555
7 months ago

Jak dobrze, że istnieje TypeScript…

@jewelofnile2424
7 months ago

Cześć, mam pytanie związane z Bootstrapem bo wiem że masz kurs Bootsrapa i podejrzewam że znasz temat. Można pytać tutaj? 😛

@olidiaks
7 months ago

Mnie zaciekawiłeś tematem, jak najbardziej czekam na kolejne.

@saskia3676
7 months ago

Zdziwiło mnie nic oprócz tablicy xD

@justyna6134
7 months ago

Genialnie tlumaczysz !

@TheKseon
7 months ago

Dzięki tobie Microsoft za TypeScript

@szczeczaczoszczeczek5077
7 months ago

Kiedyś trafiłem na taki przypadek. [] == false daje true, Number([]) daje 0 czyli false, String([]) daje "" czyli false, Boolean([]) daje true (?), a skoro Boolean([]) to true to czemu [] == false daje true, a do tego [] ? "tak" : "nie" daje "tak" czyli jednak jest prawdziwa, ale pierwsze 4 kombinacje dają false. Trochę nie rozumiem czemu tak jest.

@belkocik
7 months ago

w 5 przykładzie warto wspomnieć co ma priorytet? + czy !! przy +!!"one" === 1. Czy bierzemy pierwsze z lewej co jest przy wartości tj. "one"?

@bartek5598
7 months ago

Pytanie – czy w swojej pracy odszedłeś od PHP na rzecz JS? Jeśli tak/nie to czy widzisz taki trend wśród firm, co np. pozwala zatrudniać tylko jeden typ developerów piszących front i backend tylko w JS z uwagi na jednorodne srodowisko deweloperow i nizsze koszty?

@belkocik
7 months ago

JavaScript – czego nie rozumiesz 2 😀

@MiNos1981
7 months ago

@Twórca Stron – jaki motyw w VS Code używasz?

@sebastianurbaniec9225
7 months ago

Smaczki JS

@MIKI-ei9hs
7 months ago

Jak nazywa się rozszerzenie co pokazuje po zaznaczeniu wartość? Bo nie mogę nigdzie znaleźć?

@coder_one
7 months ago

Kursy zawsze od podstaw… ja wiem, że od podstaw się najlepiej sprzedaje, bo początkujących jest najwięcej, potem cała masa odpada i zostają wytrwali. Kiedy jakieś zaawansowane materiały, dla niepoczątkujących? 😉

@wabior11
7 months ago

Masz commenta.
Choć synchro audio niezbyt się zgrywa.

@mateuszcichocki1779
7 months ago

Omg język JavaScript nie przestaje mnie zaskakiwać… Ile ktoś musiał wypalić żeby wpaść na takie pomysły przy tworzeniu języka ;D

@kamilkulig8294
7 months ago

Inspiracja bugami Codisity 😀 Ostatnio na jego newsletterze były dokładnie te same przykłady..

@tworcastron
7 months ago

Odcinek zainpirowany biurowymi memami 🙂 Dlatego dajcie koniecznie znać, jeśli chcecie więcej podobnych odcinków!