
zagadka z JS, chce z litery 'a' zrobic litere 'b' więc:
String.fromCharCode("a".charCodeAt(0)+1)
dlaczego to samo, tylko:
String.fromCharCode("a".charCodeAt(0)++)
Nie działa?

@akerro: a operator ++ nie jest przypadkiem od zwiekszenia wartosci stojacej za zmienna bez zwracania tej zmiennej? Ewentualnie moglo byc "zwroc aktualna wartosc i zwieksz wartosc zmiennej"

@occulkot: String.fromCharCode("a".charCodeAt(0)++)
wywala błąd, nie złą wartość anyway, jakby to przypisać do zmiennej to nadal nie działa.

@akerro: Sprawdzilem w konsoli - "ReferenceError" - czyli musialbys prascowac na referencji a tymczasem probujesz to wywolac na funkcji.
13:33:28.996 "a".charCodeAt(0)++ // wywala blad przez probe odwolania sie przez referencji do metody
13:33:28.999 ReferenceError: invalid assignment left-hand side
13:33:33.150 b = "a".charCodeAt(0) // przypisanie wyniku funkcji do zmiennej
13:33:33.155 97
13:33:34.891 b++ // zwieksz wartosc na referencji a zwroc wartosc biezaca
13:33:34.905 97
13:33:37.755 b // wartosc referencji jest zwiekszona
13:33:37.766 98

@akerro: nie ten operator. Zeby miec jednolinikowca musisz uzywac pierwszej metody, chyba ze sobie lambe zrobisz typu
String.fromCharCore(function(x){ b = x.charCodeAt(0); b++; return b; }("a"));
Sztuka dla sztuki ;)

@occulkot: ale kod ;D przypomnę go sobie jak bede chcial sie wziąć za JS na powaznie ;D
a ten oszukany kod nadal nie dziala ;p

@akerro: w moim jest literowka "fromCharCore" (*core :DD) powinno byuc fromCharCode.
Roznica jest w operatorach "++" zaklada zwiekszenie wartosci na referencji i zwrocenie wartosci
x++ przed zmiana wartosci (zwroc i zwieksz)
++x po zmianie wartosci (zwieksz i zwroc)