2013-06-26 10 views

Antwort

59

zu ersetzen Als replace() erstellt/eine neue Zeichenfolge zurück, anstatt die ursprünglichen Modifizieren (tt), müssen Sie die festlegen Variable (tt) entspricht der neuen Zeichenfolge, die von der replace-Funktion zurückgegeben wird.

tt = tt.replace(/,/g, '.') 

JSFiddle

1

Per the docs, replace gibt den neuen String - es ist nicht die Zeichenfolge Sie es passieren nicht verändert.

var tt="88,9827"; 
tt = tt.replace(/,/g, '.'); 
^^^^ 
alert(tt); 
+0

funktionierten nicht, Mann – Leo

+3

@Leo nicht tatsächlich die Carets geben. – jbabey

4

Nach dem Charakter zu ersetzen, müssen Sie die Variable asign werden.

var tt = "88,9827"; 
tt = tt.replace(/,/g, '.') 
alert(tt) 

In der Alert-Box wird es zeigt 88,9827

+0

danke, auch, Mann!) – Leo

2

Von der Definition der Funktion (http://www.w3schools.com/jsref/jsref_replace.asp):

Die replace() -Methode durchsucht einen String nach einem bestimmten Wert oder einem regulärer Ausdruck und gibt eine neue Zeichenfolge zurück, in der die angegebenen Werte ersetzt wurden.

Diese Methode ändert nicht die ursprüngliche Zeichenfolge.

Daher ist die Zeile: tt.replace(/,/g, '.') nicht den Wert von tt ändern; es gibt nur den neuen Wert zurück.

Sie müssen diese Zeile ersetzen: tt = tt.replace(/,/g, '.')

-1

Dies wird neue var brauchen ttfixed

Dann ist diese unter der tt Wert-Slot und ersetzen Sie alle Zeiger darunter, diesind 210 zu ttfixed

ttfixed = (tt.replace(",", ".")); 
+0

Bitte nehmen Sie sich Zeit, um die Formatierung Ihrer Antwort zu verbessern. – Xan

+0

Die zusätzlichen Klammern sind unnötig, und da das OP hoffte, die ursprüngliche Variable zu ändern, besteht keine Notwendigkeit, eine neue zu erstellen. Wenn Sie eine neue erstellen möchten, sollten Sie 'var' hinzufügen, um zu vermeiden, dass eine globale Variable erstellt wird. – smerny

Verwandte Themen