Nie mogłem jeszcze znaleźć rozwiązania, do zastąpienia kropką.Jak zastąpić przecinek kropką w liczbie (lub jakiejkolwiek innej)
var tt="88,9827";
tt.replace(/,/g, '.')
alert(tt)
//88,9827
próbuję zastąpić przecinek kropką
góry dzięki
Nie mogłem jeszcze znaleźć rozwiązania, do zastąpienia kropką.Jak zastąpić przecinek kropką w liczbie (lub jakiejkolwiek innej)
var tt="88,9827";
tt.replace(/,/g, '.')
alert(tt)
//88,9827
próbuję zastąpić przecinek kropką
góry dzięki
Jak replace()
tworzy/zwraca nowy ciąg zamiast modyfikowania oryginalnego (tt
), trzeba ustawić zmienna (tt
) równa nowemu ciągowi zwróconemu z funkcji replace
.
tt = tt.replace(/,/g, '.')
Per the docs, replace
zwraca nowy ciąg - to nie zmienia ciąg przejechania go.
var tt="88,9827";
tt = tt.replace(/,/g, '.');
^^^^
alert(tt);
Po zastąpieniu znaku musisz przypisać do zmiennej.
var tt = "88,9827";
tt = tt.replace(/,/g, '.')
alert(tt)
W polu alertu to będzie pokazy 88,9827
dziękuję, również, stary!) – Leo
Z definicji danej funkcji (http://www.w3schools.com/jsref/jsref_replace.asp):
Replace() metoda przeszukuje ciąg do określonej wartości, lub wyrażenie regularne i zwraca nowy ciąg znaków, w którym wymienione wartości zostaną zastąpione.
Ta metoda nie zmienia oryginalnego ciągu znaków.
Stąd linia: tt.replace(/,/g, '.')
nie zmienia wartości tt
; to po prostu zwraca nową wartość.
Trzeba zastąpić ten wiersz z: tt = tt.replace(/,/g, '.')
Można również zrobić to w ten sposób:
var tt="88,9827";
tt=tt.replace(",", ".");
alert(tt);
Będzie to wymagało nowej var ttfixed
wówczas pod szczelinę wartości tt
i zamień wszystkie wskaźniki poniżej, które są tt
do ttfixed
ttfixed = (tt.replace(",", "."));
Poświęć trochę czasu na poprawienie formatowania odpowiedzi. – Xan
Dodatkowe nawiasy są zbędne, a ponieważ OP miał nadzieję zmienić oryginalny var, nie ma potrzeby tworzenia nowego. Także jeśli zamierzasz utworzyć nowy, powinieneś dodać 'var' z przodu, aby uniknąć tworzenia globalnego var. – smerny
nie działał, człowiek – Leo
@Leo nie faktycznie wpisać jest kursor. – jbabey