Autor Zpráva
Joan
Profil
Při zkoumání vlastností inkrementace jsem dostala zajímavý výsledek. Proč tomu tak je?

let x = 1;
x++;
document.write(x);              // 2
let y = x++;
document.write(y);              // 2


let x = 1;
x++;
document.write(x);              // 2
let y = x+=1;
document.write(y);              // 3

Překvapuje mě tento výsledek, a rovněž to, že první inkrementaci (hned za deklarací proměnné x) je úplně fuk, jak je napsaná.
Díky předem za vysvětlení.
Mlocik97m
Profil *
pretoze v druhom pripade mate 2 priradenia (ulozenia hodnoty do premennej), a to priradovanie sa vykonava z prava do lava


staci v druhom pripade spravne ozatvorkovat a bude to to iste co druhy pripad, teda vysledok bude 2 a 2


a pokud mozno vymenit let za var.... let bych v takejto situacii. epouzival
Joan
Profil
Mlocik97m:
Aha... dvě přiřazení? A proč se tedy ve všech učebnicích píše, že 'x=x+1' neboli 'x+=1' se dá zkráceně zapsat jako 'x++' ?

Záměna let za var nepomůže, ozávorkování (x+=1) rovněž ne...
Radek9
Profil
Joan:
Zkrácně to právě není x++, ale ++x, což je dost podstatný rozdíl. x++ inkrementuje proměnnou, ale vrací původní hodnotu. ++x (což je tedy ekvivalent x+=1) inkrementuje proměnnou a vrací novou hodnotu.
Joan
Profil
Radek9:
JO!! V tom případě ale kniha "Javascript programujeme internetové aplikace" od Rastislava Škultétyho, r.v. 2004, str. 27 dole píše NEPRAVDU...
Díky moc za Tvůj čas, už mi to sedí
Kcko
Profil
Joan:
Vyhod ji a kup si tuto (pokud ji seženeš) www.albatrosmedia.cz/tituly/8486895/java-script-pro-webove-vyvojare
Joan
Profil
Kcko:
Díky za tip! Napíšu si Ježíškovi :-)
Radek9
Profil
Joan:
Nebo si (pokud nemáš problém s angličtinou) přečti Eloquent JavaScript. Dá se přečíst zdarma online.
Joan
Profil
Radek9:
Děkuji, vím o tomto webu! I o mnoha dalších, a díky tomu mrskám angličtinu už o poznání slušnějc. Stejně tak jsem četla varování na tyto stránky ovšem pro laika je těžké odlišit zrno od plev...
Justýna
Profil
Kcko:
Datum vydání 15. 11. 2009
Kcko
Profil
Justýna:
Díky za info, a?
Mlocik97m
Profil *
Justýna:
a to sa od 15.11.2009 vymenilo co delaji x++ a ++x?

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0