NumberFormatter 類別會根據特定地區設定的慣例來格式化數值 (類型為 int、uint 或 Number 的數值)。
下列範例顯示如何利用使用者之作業系統提供的預設格式屬性,將數字格式化。這是最簡單的方式:
var nf:NumberFormatter = new NumberFormatter(LocaleID.DEFAULT);
trace(nf.formatNumber(-123456.789))
結果會根據使用者的地區設定和使用者偏好設定而不同。例如,如果使用者的地區設定是 fr-FR,則格式化的值會是:
-123.456,789
如果您只想要格式化特定地區設定的數字,而不管使用者的設定,則請特別設定地區設定名稱。例如:
var nf:NumberFormatter = new NumberFormatter("de-CH");
trace(nf.formatNumber(-123456.789));
在此情況下,結果為:
-123'456.789
formatNumber() 方法接受 Number 的參數。NumberFormatter 類別也有接收 int 做為輸入的 formatInt() 方法,以及接受 uint 做為輸入的 formatUint() 方法。
您可以設定 NumberFormatter 類別的屬性,明確控制格式邏輯 (如這個範例所示):
var nf:NumberFormatter = new NumberFormatter("de-CH");
nf.negativeNumberFormat = 0;
nf.fractionalDigits = 5;
nf.trailingZeros = true;
nf.decimalSeparator = ",";
nf.useGrouping = false;
trace(nf.formatNumber(-123456.789)); //(123456.78900)
這個範例會先建立 NumberFormatter 物件,然後:
備註: 上述部分屬性變更時,產生的數字格式就不再對應所指定地區設定的偏好格式。上述部分屬性只適用於不一定要區分地區設定時、需要更詳細控制格式的單一部分 (例如結尾零的數目) 時,或是使用者直接要求變更時 (例如,透過 Windows「控制台」)。