ActionScript 3.0 では、Number データ型は、整数、符号なし整数、および浮動小数点数を表すことができます。 ただし、パフォーマンスを最大化するために、32 ビット int および uint 型より大きい整数値に対してのみ、Number データ型を使用する必要があります。また、Number データ型には、浮動小数点数を格納することができます。浮動小数点数を格納するには、数値に小数点を含めます。 小数点を省略すると、数値は整数として格納されます。
Number データ型では、2 進数浮動小数点計算のための IEEE 規格 (IEEE-754) で指定されている 64 ビット倍精度フォーマットを使用します。 この規格では、64 ビットを使用して浮動小数点数を格納する方法が指定されています。 1 ビットを使用して数値が正か負かを指定します。 指数には 11 ビットが使用され、2 を底として格納されます。残りの 52 ビットは、指数で指定される累乗した数値である仮数部(仮数とも呼ばれます)を格納するために使用されます。
Number データ型では、ビットの一部を使用して指数を格納することで、仮数のビットすべてを使用する場合より大きな浮動小数点数を格納できます。 例えば、Number データ型で 64 ビットすべてを使用して仮数を格納した場合は、2 65 - 1 の数値を格納できます。Number データ型では、11 ビットを使用して指数を格納することで、仮数を 2 1023 乗できます。
Number 型が表すことができる最大値と最小値は、Number.MAX_VALUE および Number.MIN_VALUE と呼ばれる Number クラスの静的プロパティに格納されます。
Number.MAX_VALUE == 1.79769313486231e+308
Number.MIN_VALUE == 4.940656458412467e-324
この数値の範囲が膨大である一方で、この範囲の精度が犠牲になっています。 Number データ型では、仮数の格納に 52 ビットを使用します。その結果、分数 1/3 など、正確に表すためには 53 ビット以上必要な数値は近似値にしかなりません。 アプリケーションで小数値を持つ絶対精度が必要な場合、2 進浮動小数点数計算ではなく、10 進浮動小数点計算を実装するソフトウェアを使用する必要があります。
Number データ型で整数値を格納する場合、仮数の 52 ビットだけが使用されます。 Number データ型は、これらの 52 ビットと特殊な非表示のビットを使用して、-9,007,199,254,740,992(-253)~ 9,007,199,254,740,992(253)の整数を表します。
Flash Player および Adobe AIR では、Number 型の変数のデフォルト値としてだけではなく、数値を返す必要があるが返さない演算の結果としても、NaN 値を使用します。例えば、負の数値の平方根を計算しようとすると、その結果は NaN になります。その他の特殊な Number の値には正の無限大と負の無限大があります。
注意: 0 による除算の結果は、除数も 0 の場合、NaN だけです。0 による除算の結果は、被除数が正の場合に正の無限大、被除数が負の場合に負の無限大となります。