作成日: 2017/03/21 最終更新日: 2019/12/23
文書種別
不具合
状況
修正済み
詳細
Globalize.parseFloatメソッドを使用して、特定のパーセント文字列を浮動小数点数に変換すると、次のように誤差が発生してしまいます。
11.11% → 0.11109999999999999
11.11% → 0.11109999999999999
回避方法
この問題はバージョン5.20183.568で修正されました。
修正版を適用しない場合の回避方法は次の通りです。
下記コードのように明確に小数桁数を指定し、小数を四捨五入します。
◆サンプルコード(JavaScript)
----------------------------------
var tmpData2 = floatFormat(wijmo.Globalize.parseFloat('11.11%'), 4);
grid.setCellData(1, 2, tmpData2.toString());
function floatFormat(number, n) {
var _pow = Math.pow(10, n);
return Math.round(number * _pow) / _pow;
}
----------------------------------
修正版を適用しない場合の回避方法は次の通りです。
下記コードのように明確に小数桁数を指定し、小数を四捨五入します。
◆サンプルコード(JavaScript)
----------------------------------
var tmpData2 = floatFormat(wijmo.Globalize.parseFloat('11.11%'), 4);
grid.setCellData(1, 2, tmpData2.toString());
function floatFormat(number, n) {
var _pow = Math.pow(10, n);
return Math.round(number * _pow) / _pow;
}
----------------------------------
旧文書番号
82075