Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将逗号替换为数字中的点(或任何替换)_Javascript_Regex_Replace_Jscript - Fatal编程技术网

Javascript 如何将逗号替换为数字中的点(或任何替换)

Javascript 如何将逗号替换为数字中的点(或任何替换),javascript,regex,replace,jscript,Javascript,Regex,Replace,Jscript,我还没有找到一个用圆点替换的解决方案 var tt="88,9827"; tt.replace(/,/g, '.') alert(tt) //88,9827 我想把逗号换成点 由于replace()创建/返回新字符串而不是修改原始字符串(tt),因此需要将变量(tt)设置为等于从replace函数返回的新字符串 tt = tt.replace(/,/g, '.') Per,replace返回新字符串-它不会修改传递给它的字符串 var tt="88,9827"; tt = tt.repla

我还没有找到一个用圆点替换的解决方案

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

//88,9827
我想把逗号换成点

由于
replace()
创建/返回新字符串而不是修改原始字符串(
tt
),因此需要将变量(
tt
)设置为等于从
replace
函数返回的新字符串

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

Per,
replace
返回新字符串-它不会修改传递给它的字符串

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

替换字符后,您需要对变量进行asign

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

在警报框中,它将显示函数定义()中的88.9827

replace()方法在字符串中搜索指定的值或 正则表达式,并返回一个新字符串,其中 值被替换

此方法不会更改原始字符串。

因此,行:
tt.replace(/,/g,'.')
不会更改
tt
的值;它只返回新值


您需要将此行替换为:
tt=tt。替换(/,/g,'.')

您也可以这样做:

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

这将需要新的var
ttfixed

ttfixed = (tt.replace(",", "."));
然后将其放在
tt
值槽下,并将
tt
下的所有指针替换为
ttfixed

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

@Leo实际上没有键入插入符号。请花时间改进您答案的格式。多余的括号是不必要的,因为OP希望更改原始变量,所以不需要创建新的。另外,如果您要创建一个新的变量,您应该在前面添加
var
,以避免创建全局变量。这是一个非常简单但有效的解决方案。如果您对任何字符串使用此选项,您可能会遇到问题。例如,
1、2、3等输入变为
1。2.3
。为了确保您有一个数字,请参阅第页的解决方案,问题只是用句点替换逗号。如果你改变问题,你可能会遇到各种各样的问题。。。。但是在OP的例子中,字符串似乎除了一个数字之外没有任何其他内容。我知道这是一个非常古老的问题,但是对于那些有复杂的CSV字符串的人,我的评论可能会很有趣。如果您想用如下字符串中的点替换逗号:“0001;x,y,z;0,a;b,1;2,45;”使用已接受的答案是行不通的。然后您可以尝试这样的操作:
var res=tt.replace(/([0-9]{1,})(,)([0-9]{1,})/g,“$1.$3”)仅当逗号由每侧至少一个数字包围时,才会与逗号匹配。