Javascript &引用;“替换不是一项功能”;

Javascript &引用;“替换不是一项功能”;,javascript,replace,Javascript,Replace,我正试图从一个数字中删除逗号 var thisbill_str = ""; thisbill = $('#linebill_' + z).val(); if (isNaN(thisbill) ) { thisbill = 0.00; } thisbill_str = thisbill; thisbill = thisbill_str.replace(/,/g, ""); 此javascript代码给了我一个错误: TypeError: thisbill_str.replace is

我正试图从一个数字中删除逗号

var thisbill_str = ""; 
thisbill = $('#linebill_' + z).val(); 
if (isNaN(thisbill) ) { thisbill = 0.00; } 
thisbill_str = thisbill; 
thisbill = thisbill_str.replace(/,/g, ""); 
此javascript代码给了我一个错误:

TypeError: thisbill_str.replace is not a function
不管我是否给它加上“g”和“I”标志。 仅当字符串中没有逗号时,即字符串为“515.00”时,才会执行此操作。如果字符串为'5515.00',则它可以正常工作。
我在文档中没有看到任何东西告诉我要替换的字符串必须实际存在。我遗漏了什么,还有什么更好的方法可以做到这一点呢?

TypeError:thisbill\u str.replace不是一个函数

thisbill\u str
不能强制为字符串对象,因此它没有
replace
方法


thisbill\u str的值是否为null?

这很可能是由于thisbill\u str不是字符串引起的。也许你有其他代码可以自动将这个bill\u str转换成一个数字

可以使用将转换回字符串

完整的代码是:

thisbill=String(thisbill\u str)。替换(“,”,“”)
你应该在这里投球
thisbill\u str
仍然是一个数字,因此它没有替换方法

thisbill_str = thisbill + '';

请准确地告诉我们,当这张账单不起作用时,里面有什么。最好制作一个JSFIDLE来显示问题。可能
thisbill\u str
不是字符串。如果它是
null/undefined
则会是另一个错误,因为这些值不能有属性;-)我将猜测一个DOM元素,但想法是一样的:
thisbill\u str
不会计算为字符串。不,我将其初始化为“”,然后在其中放入一个浮点。假设浮点是515.00。@user2539612,那么它的计算结果是一个数字(不是字符串,因此没有
replace
方法)。请记住,JavaScript中的变量/属性没有类型-它们的计算结果有类型。@user2539612您可以显示仍显示错误的代码的精简版本吗?@user2246674 Any
Number
对象强制使用
字符串
对象就可以了。这很有效!非常感谢。我只是把它放在绳子上。我忘了javascript不是真正的强类型。
thisbill_str = thisbill + '';