• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

inkrementacja, dekrementacja / javascript/

Object Storage Arubacloud
0 głosów
2,022 wizyt
pytanie zadane 5 marca 2018 w JavaScript przez yutyub Obywatel (1,140 p.)
Witam. Czy mógłby mi ktoś dokładnie wytłumaczyć jak to działa tj. dlaczego takie liczby wyszły? Muszę to wiedzieć.

<!DOCTYPE html>
<html>
    <head>
        
    </head>
    <body>
<script type="text/javascript">
var x = 0; document.write(x + "<br>");
x++;     document.write(x + "<br>");
document.write(++x + "<br>");
document.write(x+ "<br>");

x+=x++ + ++x;
document.write(x + "<br>");

</script>
    
    </body>
</html>

 

Wyszły takie cyfry

0
1
2
2
8

 

Dziękuję

1 odpowiedź

0 głosów
odpowiedź 5 marca 2018 przez Scypyon Gaduła (3,450 p.)
wybrane 7 marca 2018 przez yutyub
 
Najlepsza

var x = 0; document.write(x + "<br>"); // deklarujesz x= 0 i wypisujesz x= 0 <br> - przejście do nowej linii
x++;     document.write(x + "<br>");// na początku "x++" - zwiększasz x o 1 i wypisujesz x=1(bo zmieniłeś wartość x za pomocą x++) i <br> tak jak wyżej
document.write(++x + "<br>"); //tutaj odrazu wypisujesz x=2 
document.write(x+ "<br>"); // wypisujesz x "+" służy jako łącznik tak zwany, dzieje się tutaj proces ,który nazywamy konkatenacją.

x+=x++ + ++x; // 2+3+3 , += czyli do wyniku dodajesz coś

document.write(x + "<br>"); // w działaniu wyżej zamieniłeś wartość x na 8 i tu po prost ją wypisujesz

 

 

Wiesz, to są takie podstawy podstaw, polecam C++ na start u Pana Mirka, Sam uczę się JS i mówię Ci z C++ czerpię załymi garściami. :)

komentarz 5 marca 2018 przez yutyub Obywatel (1,140 p.)

@Scypyon,
W tej linijce nie za bardzo wiem o co chodzi

x+=x++ + ++x; // 2+3+3 , += czyli do wyniku dodajesz coś

Muszę dokładnie wiedzieć o co chodzi w każdej linijce, wiem, że to skrypt obliczy, ale chcę wiedzieć skąd to się wzięło

komentarz 5 marca 2018 przez adrian17 Ekspert (344,860 p.)

Mogę się mylić (kolejność takich dziwnych działań jest często podchwytliwa i różni się między językami - dlatego nikt czegoś takiego nigdy nie pisze), w każdym razie to powinno wyglądać tak:

x  +=    x++ + ++x;
// mozna inaczej zapisac jako
x = x + (x++ + ++x);
//  A     B     C

// w takim razie:
let x = 2;
let A = x;   // A==2
let B = x++; // B==2, x==3
let C = ++x; // C==4, x==4

x = A+B+C; // 2+2+4 == 8

 

komentarz 5 marca 2018 przez Scypyon Gaduła (3,450 p.)

@yutyub

Przeczytaj sobie co to "+=", czyli x= x++ + ++x +x , to dłuższy zapis, ogólnie to wygląda tak: w przed ostatnim wierszu zmieniłeś x na 2 (x=2).

x

=

3 // inkrementowany x , czyli 3(x++ lub ++x)

+

3 // inkrementowany x , czyli 3(x++ lub ++x)

+

2 //  x=2 

 

Mogę spytać po co ci ta wiedza?

komentarz 5 marca 2018 przez yutyub Obywatel (1,140 p.)

Tak to jest jak nauczyciel nie umie wytłumaczyć do końca. Dziś to mieliśmy, a jutro będzie coś z tego.

komentarz 5 marca 2018 przez Scypyon Gaduła (3,450 p.)

 

"Experience shows that the success of a programing course critically depends on the choice of presented examples" ~ Niklaus Wirth ~

 

Jego przykłady są do niczego. To jest moje zdanie. Po co używa ++x oraz x++, skoro nie pokazuje różnic między nimi? Tak jak wyżej adrian17? Chcesz nauczyć się JS?  kursjs.pl - polecam. Liczę na naj , jeżeli coś pomogłem :)

 

Podobne pytania

0 głosów
1 odpowiedź 209 wizyt
0 głosów
0 odpowiedzi 95 wizyt
pytanie zadane 5 stycznia 2020 w C i C++ przez Lulex Użytkownik (820 p.)
0 głosów
3 odpowiedzi 1,954 wizyt

92,573 zapytań

141,423 odpowiedzi

319,645 komentarzy

61,959 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...