(オブジェクトとして)数値を取得し、その数値の適切にフォーマットされた表現を返す関数があります。非常に小さい数を取得できるため、プロセスではflexのNumberオブジェクトを使用します。これはコードの一部です:
var numericValue:Number = Number(value.toString());
var fixed:String = numericValue.toFixed(precision);
これが問題です。上記のコードを使用するときに
5.684341886080802e-14
これらの数値を表現したいため、数値がの形式になっている場合があります。0
この特定のケースでは、精度が0の場合、奇妙な結果が得られます
Initial Values:
value = 5.684341886080802e-14
percision = 0
Operation on values:
var numericValue:Number = Number(value.toString());
var fixed:String = numericValue.toFixed(precision);
Result:
fix = "1."
どうしてこれなの?
(BTW- X.XXXXXXe-YY
0より大きいpercisionの表現の他の数値では、0の正しい結果が得られます)