Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

JS dlaczego porównanie nie działa?

szymon1051 28 Lis 2015 17:25 645 11
  • #1 28 Lis 2015 17:25
    szymon1051
    Poziom 13  

    Gdy mam coś takiego czyli x = 1 to działa.

    Kod: html
    Zaloguj się, aby zobaczyć kod


    Ale jak mam coś takiego czyli x >= 1 i podobnie x == 1to już nie działa. Dlaczego?
    Kod: html
    Zaloguj się, aby zobaczyć kod

    0 11
  • Pomocny post
    #2 28 Lis 2015 17:30
    -psiak-
    Poziom 32  

    1.

    Kod: html
    Zaloguj się, aby zobaczyć kod
    2.
    Kod: javascript
    Zaloguj się, aby zobaczyć kod

    0
  • #3 28 Lis 2015 17:41
    szymon1051
    Poziom 13  

    -psiak- napisał:
    1.
    Kod: html
    Zaloguj się, aby zobaczyć kod


    Czyli podaje pobierze zmiana.wartość. A jak jest wartość value w inport to jest jak by wartość domyślna ale jak jakaś wartość inna jest podawana to jest po prostu wartość domyślna zastępowana?

    -psiak- napisał:
    2.
    Kod: javascript
    Zaloguj się, aby zobaczyć kod


    Czyli w if definiowałem x :).

    0
  • #4 28 Lis 2015 17:49
    -psiak-
    Poziom 32  

    szymon1051 napisał:
    Czyli podaje pobierze zmiana.wartość. A jak jest wartość value w inport to jest jak by wartość domyślna ale jak jakaś wartość inna jest podawana to jest po prostu wartość domyślna zastępowana?
    Przykro mi, nie znam tego języka. Znam tylko: Polski, Angielski, Rosyjski.

    szymon1051 napisał:
    Czyli w if definiowałem x :).
    to się nazywa przypisywanie wartości, definiuje się funkcje i klasy.

    0
  • #5 28 Lis 2015 17:58
    szymon1051
    Poziom 13  

    -psiak- napisał:
    szymon1051 napisał:
    Czyli podaje pobierze zmiana.wartość. A jak jest wartość value w inport to jest jak by wartość domyślna ale jak jakaś wartość inna jest podawana to jest po prostu wartość domyślna zastępowana?
    Przykro mi, nie znam tego języka. Znam tylko: Polski, Angielski, Rosyjski.


    Chodzi mi o to że jak mam np
    Kod: html
    Zaloguj się, aby zobaczyć kod
    , to wartość 1 jest wyświetlana na starcie ale może być zmieniona podczas działania skryptu i tu
    Kod: html
    Zaloguj się, aby zobaczyć kod
    już zaimportowane jako np 5.

    Tak?

    0
  • #6 28 Lis 2015 18:08
    -psiak-
    Poziom 32  

    szymon1051 napisał:
    ... to wartość 1 jest wyświetlana na starcie ...
    Tak.
    szymon1051 napisał:
    ... ale może być zmieniona podczas działania skryptu ...
    Tak, ale wg mnie mylisz działanie skryptu z wpisywaniem danych do formularza przez użytkownika.
    szymon1051 napisał:
    ... i tu ... już zaimportowane jako np 5.
    Nie zaimportowane lecz pobrana wartość, po ostatniej akcji:
    - przypisanie w skrypcie;
    - wprowadzeniu przez użytkownika;

    Znajdź może byle jaki kurs HTML i JavaScript (wybierz najkrótszy) i przeczytaj aby przynajmniej słownictwa własnego nie wymyślać.

    0
  • #7 28 Lis 2015 18:15
    szymon1051
    Poziom 13  

    JS się pouczyłem bo w szkole go uczą i musiałem zaliczyć, ale potem postanowiłem się trochę pobawić. Uczyłem się z http://sklep.wsip.pl/produkty/aplikacje-inter...nik-informatyk-szkoly-ponadgimnazjalne-25431/ , 50 storn o JS. Znasz jakiś dobry poradnik, bo w internecie można znaleźć dużo bzdur :)?

    /btw

    Zmieniłem na document.write

    Kod: html
    Zaloguj się, aby zobaczyć kod


    Testowałem to w chrome i nie dostawałem to co napisałem w document.write, sprawdziłem w https://jsfiddle.net/ i dostawałem np "liczba jest dodatnia" w mozilli podobnie, potem sprawdziłem w operze i podobnie jak w chrome nic nie wyświetlało. Webkid (silnik google chrome i opery) nie lubi document.write?

    0
  • #8 28 Lis 2015 18:33
    -psiak-
    Poziom 32  

    To nie ma prawa pokazać żadnego z tych komunikatów, jeżeli coś ci takowy pokazuje to wywal to narzędzie.
    document.write tworzy kod HTML po stronie klienta, przed jej pojawieniem się przed oczami klienta.
    Więc nie ma sposobu na jakąkolwiek interakcje z użytkownikiem.

    Nie staw klamerek jeżeli nie są potrzebne;
    Zacznij używać else;
    Po zakończeniu funkcji średnik jest zbędny;

    Zacznij odpowiednio oznaczać posty które ci pomogły.

    0
  • #9 28 Lis 2015 21:40
    rufek90
    Poziom 24  

    -psiak- napisał:

    Nie staw klamerek jeżeli nie są potrzebne;


    Przepraszam, że może nie do końca w temacie, ale muszę się wtrącić! Według mnie stawianie klamer to bardzo dobra praktyka i powinna być zawsze stosowana. Nawet jeżeli nad kodem pracuje jedna osoba i kod jest śmiesznie prosty, to nie ma sensu, żeby ktoś się uczył złych nawyków.
    Podobnie ma się sytuacja ze średnikami w JS, których autor tematu również nie dodał do swojego kodu.

    0
  • #10 28 Lis 2015 23:40
    -psiak-
    Poziom 32  

    rufek90, to stawianie wszędzie klamer jest złym nawykiem, zwyczajnie zaśmieca obraz.
    Natomiast jeżeli przenosisz instrukcje na następny wiersz wtedy dopiero klamry są dobrym pomysłem.
    Kod ma się czytać wizualnie.

    0
  • #11 29 Lis 2015 13:14
    szymon1051
    Poziom 13  

    -psiak- napisał:
    To nie ma prawa pokazać żadnego z tych komunikatów, jeżeli coś ci takowy pokazuje to wywal to narzędzie.
    document.write tworzy kod HTML po stronie klienta, przed jej pojawieniem się przed oczami klienta.


    I tak właśnie wyświetla mozilla i https://jsfiddle.net/ pustą stronę z napisem który jest w document.write np "liczba jest dodatnia". A chrome i opera nic nie wyświetla.

    -psiak- napisał:

    Nie staw klamerek jeżeli nie są potrzebne;
    Zacznij używać else;
    Po zakończeniu funkcji średnik jest zbędny;


    Sądziłem że klamry są konieczne.
    Else jest wykonywane kiedy if nie jest spełnione więc mógł bym dać jedną opcje np "liczba jest zerem", ale nie miał bym "liczba jest ujemna" ewentualnie można użyć else if.

    0
  • #12 29 Lis 2015 15:00
    -psiak-
    Poziom 32  

    Ale to nie pokazuje ci tego komunikatu tylko zastępuje całą stronę tym komunikatem.
    To taka fiszka mozili że po załadowaniu dokumentu pozwala na document.write resetując cały dokument.
    Zastanów się nad:

    Kod: html
    Zaloguj się, aby zobaczyć kod

    0