如何从JavaScript中的string中删除“,”

原始string是“a,d,k”我想删除所有的“,”,并使其成为“adk”。 我试过:“a,d,k”.replace(/,/,“”)但是不起作用。 提前致谢。

您不是将replace方法的结果分配给您的variables。 当你调用replace时,它会返回一个新的string,而不会修改旧的string。

例如,将其加载到您最喜欢的浏览器中:

<html><head></head><body> <script type="text/javascript"> var str1 = "a,d,k"; str1.replace(/\,/g,""); var str2 = str1.replace(/\,/g,""); alert (str1); alert (str2); </script> </body></html> 

在这种情况下, str1仍然是"a,d,k"str2将是"adk"

如果你想改变str1 ,你应该这样做:

 var str1 = "a,d,k"; str1 = str1.replace (/,/g, ""); 

使用String.replace() ,例如

 var str = "a,d,k"; str = str.replace( /,/g, "" ); 

注意正则expression式上的g (全局)标志,它匹配所有“,”的实例。

如果U想要删除多个字符,可以写逗号和点

 <script type="text/javascript"> var mystring = "It,is,a,test.string,of.mine" mystring = mystring.replace(/[,.]/g , ''); alert( mystring); </script> 

你可以尝试像这样:

 var str = "a,d,k"; str.replace(/,/g, ""); 

<script type="text/javascript">var s = '/Controller/Action#11112';if(typeof s == 'string' && /\?*/.test(s)){s = s.replace(/\#.*/gi,'');}document.write(s);</script>

这是比较常见的答案。 并可以用s= document.location.href;

如果您需要一个大于999,999.00的号码,您将遇到问题。
这些只适用于less于一百万,一百万的数字。
他们只删除1或2个逗号。

这里可以删除多达12个逗号的脚本:

 function uncomma(x) { var string1 = x; for (y = 0; y < 12; y++) { string1 = string1.replace(/\,/g, ''); } return string1; } 

修改那个for循环,如果你需要更大的数字。