5

数字からコンマを削除しようとしています。

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' の場合にのみ実行されます。文字列が「5,515.00」の場合、正常に動作します。ドキュメントには、置換される文字列が実際に存在する必要があることを示すものは何もありません。私は何が欠けていますか?これを行うためのより良い方法は何ですか?

4

3 に答える 3

9

これはおそらく thisbill_str が文字列以外のものであることが原因です。thisbill_str を Number に自動的に変換するコードがどこかにあるのではないでしょうか?

String(thisbill_str)を使用して文字列に戻すことができます。

完全なコードは次のようになります。

thisbill = String(thisbill_str).replace(",", "")
于 2013-09-18T01:25:12.910 に答える
2
thisbill_str = thisbill; 

ここで文字列にキャストする必要があります。thisbill_strはまだ数値なので、replace メソッドはありません。

thisbill_str = thisbill + '';
于 2013-09-18T02:06:53.940 に答える