Wpis z mikrobloga

Siema Miraski!

tl;dr podstawy JavaScriptu w 48h!

Sprawa jest taka - IV klasa technikum here, w styczniu egzamin E14, ocena na koniec roku z programowania aplikacji internetowych (taki przedmiot zawodowy w technikum) - 4. Troche mnie to nie satysfakcjonuje, bo to ocena na świadectwie maturalnym, na koniec technikum. Więc trzeba coś z tym zrobić. Z rozmowy z nauczycielem wyszło, że jeśli chcę mieć 5/6, to w poniedziałek indywidualny egzamin z JS-a.

Problem polega na tym, że JS-a nie ogarniam, znam tylko podstawy, a skrypty jakie pisałem, to tylko te z pomocą internetu. Dlaczego tego nie potrafię? Bo to nie do końca moja bajka. Nie odnajduję się jako programista, nie będę nikogo oszukiwał, w tym samego siebie.

Więc tak, rozpoczynam naukę z Mirkiem Zeneltem, mam około 70h na naukę podstaw JS-a. Czy dam radę?
Nie oczekuję wiedzy jak #programista15k . Chcę żebyście mnie dobrze zrozumieli - nie zostanę programistą w kilka dób, ale chcę zobaczyć, czy da radę w trzy dni ogarnąć podstawy, filar do dalszej nauki.

Zadania na egzaminie z tego co wiem nie są jakieś wygórowane, skomplikowane. Mam nadzieję, że dam radę. Jestem zmotywowany.

Trzymajcie kciuki Murki, dam znać w poniedziałek ja mi poszło!

#informatyka #programowanie #nauka #egzaminzawodowy #challenge
  • 70
  • Odpowiedz
@Vetinari:

I to była wina cssa czy źle zaimplementowanej obsługi Unicode?

Oczywiście, że była to wina Unicode, ale jakie to ma znaczenie? Jeżeli możesz znaki Unicode używać w cssie to musisz być świadomy tego jakie w tym kontekście mogą dla Ciebie nieść zagrożenie.
Nigdzie nie napisałem, że podane przykłady odnoszą się do składni, tylko że są związane z daną
  • Odpowiedz
@enemyw0w-: @sokytsinolop:
A tak jeszcze prościej ( ͡° ͜ʖ ͡°)
if(dlugoschasla.length >= 7) wynik.innerHTML = "dobre";
else if(dlugoschasla.length >= 4 && dlugoschasla.length < 7) wynik.innerHTML = "srednie";
else if(dlugoschasla.length >= 1 && dlugoschasla.length < 4) wynik.innerHTML = "slabe";
  • Odpowiedz
@enemyw0w-: Btw - jak już zdążysz się pobawić document.getElementById() to zainteresuj się chociaż jQuery - znacznie ułatwia zabawy na drzewie DOM, o Angularach nie wspominam, jak Cię to zainteresuje to przyjdzie na to czas ;)
  • Odpowiedz
@Pawloo: Dzięki za sugestię. Zdążyłem już nieco poznać jQuery, ale na razie przygotowuję się do egzaminów, na których raczej nie wykorzystam ich pełnego potencjału.
  • Odpowiedz
-w jaki sposób więc przypisać zmienną? const?


@enemyw0w-: Generalnie w JSie masz 3 rodzaje zmiennych. Var to zmienna globalna/o zasięgu funkcyjnym. Tutaj możesz poczytać sobie o mechanizmie hoisting. Natomiast jeżeli chodzi o zmienne o zasięgu blokowym to masz do dyspozycji let i const. Const (constans z łaciny, stała) stosujesz w momencie kiedy deklarujesz zmienną i dalej w kodzie jej nie modyfikujesz, a jedynie odczytujesz. Natomiast let to normalna zmienna na
  • Odpowiedz
@Pawloo: Póki co lecę z kolejnym zadaniem. Uznałem, że najefektywniejszym sposobem uczenia będzie robienie zadań i wyszukiwanie w internecie informacji których nie znam i nie jestem w stanie ich wydedukować.
  • Odpowiedz
@enemyw0w-: A - i jak używasz porównania to w JS używaj ===. Porównanie z dwoma znakami równości w przypadku różnicy typów dokonuje niejawnego rzutowania (np. parsowanie stringa "12" do typu number) prawej strony na typ po lewej stronie i mogą wychodzić niezłe kwiatki w przypadku różnicy typów (np string do number, boolean etc).

W przypadku === JS porównuje najpierw typy zmiennych (gdy są różne, np. porównanie stringa z number zwróci
  • Odpowiedz
@enemyw0w-:
Odnośnie zadania:
1. document.wybor.zaznaczenie.checked - nie zapisuj tak zmiennych. Jeżeli chcesz mieć zmienną kilku wyrazową używaj notacji CamelCase (każdy kolejny wyraz wielką literą, bez łączników).
2. "+ilekm * y+" - tak wygląda konkatenacja w ES5, warto też wiedzieć jak wygląda w ES6.
3. Nie ma potrzeby każdej funkcji zapisywać w osobnych znacznikach
  • Odpowiedz
@Veni: @Pawloo: Doceniam wasze uwagi. Chciałbym tylko abyście wiedzieli, ze nie mam odpalonego wypoku cały czas. Wchodzę tutaj po zakończeniu pewnego etapu programu. Podczas pisania jest wyłączone, aby pozwolić mi maksymalnie się skupić.
  • Odpowiedz
@Veni: Co do ifów - zgadzam się w pełni, trochę kwestia mojego niedopatrzenia, ale też chęć napisania kodu tak, żeby młody adept programowania to zrozumiał ;)

Natomiast jeżeli chodzi o jQuery - na start raczej nie polecę mu Angulara 7, bo samo postawienie środowiska pod to zajmie mu kilka dni, a przy okazji się do tego mocno zniechęci ogromem plików w porównaniu do małego skryptu w jednym pliku :) A
  • Odpowiedz
@Pawloo: Nie przechodźmy ze skrajności w skrajność, to że nie powinno się uczyć jQuery nie powoduje by kierować ludzi na angulara czy inne podobne rozwiązania. Najpierw js, bo na tym jest wszystko zbudowane ;)

Nie twierdzę, że niejawne rzutowanie nie sprawi problemu, ale stosowanie zawsze sprawdzania identyczności nie jest lekarstwem, ponieważ nie w każdym przypadku jest to potrzebne. Wręcz pokusiłbym się, że jest odwrotnie, na początku sprawdzanie identyczności przysporzy mu
  • Odpowiedz
@Veni: @Pawloo: jQuery już dziś stawiałem.Znalazłem w google jedną przydatną funkcję z tym związaną. Było to około godziny 15.30, więc nie miałem jeszcze tak naprawdę pojęcia co robię a jedynie śledziłem instruktaże w internecie.Teraz robię wszystko sam i myślę, że to lepsza opcja. Bibliotekę dodałem ze skryptu taką linią:

``

Myślę że to najnowsza bibilioteka. Znaalzłem ją na oficjalnej stronie.

Oto o godzinie 23.30 pojawił mi się pierwszy
  • Odpowiedz