套件 | flash.globalization |
類別 | public final class NumberFormatter |
繼承 | NumberFormatter Object |
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
int
、uint
和 Number
物件。
NumberFormatter 類別使用作業系統提供的資料與功能,且旨在依使用者偏好設定與使用者作業系統支援的功能,根據特定地區設定的慣例,對數字進行格式化。負號、小數分隔符號、分組分隔符號、分組樣式和其他元素在數字格式中的位置,會根據地區設定而有所不同。
如果作業系統支援要求的地區設定,會根據要求的地區設定之慣例與預設值,來設定數字格式設定屬性。若無法使用所要求的地區設定,則會根據後援或預設系統地區設定 (可使用 actualLocaleIDName
屬性擷取) 設定屬性。
由於所用的使用者設定、作業系統提供的格式化樣式,以及不支援所要求地區設定時所用的後援地區設定之不同,即使使用相同的地區設定 ID,不同使用者也會看到不同的格式化結果。
屬性 | 定義自 | ||
---|---|---|---|
actualLocaleIDName : String [唯讀]
此 NumberFormatter 物件所使用的實際地區設定 ID 名稱。 | NumberFormatter | ||
constructor : Object
類別物件的參照或是特定物件實體的建構函數。 | Object | ||
decimalSeparator : String
用來格式化或解析含有小數部分的數值之小數分隔字元。 | NumberFormatter | ||
digitsType : uint
定義格式化數字時所用的位數字元集。 | NumberFormatter | ||
fractionalDigits : int
小數分隔符號後可出現的最大位數。 | NumberFormatter | ||
groupingPattern : String
說明已格式化數字字串中,分組分隔符號的位置。 | NumberFormatter | ||
groupingSeparator : String
用於分組分隔符號的字元或字串。 | NumberFormatter | ||
lastOperationStatus : String [唯讀]
此 NumberFormatter 物件執行之上一個作業的狀態。 | NumberFormatter | ||
leadingZero : Boolean
指定若小數分隔符號左邊沒有整數位數,是否要在格式化的數字中補上開頭的零。 | NumberFormatter | ||
negativeNumberFormat : uint
表示負值格式化樣式的數值。 | NumberFormatter | ||
negativeSymbol : String
格式化負值時要使用的負號。 | NumberFormatter | ||
requestedLocaleIDName : String [唯讀]
傳送到此 NumberFormatter 物件建構函式的所要求地區設定 ID 名稱。 | NumberFormatter | ||
trailingZeros : Boolean
指定格式化後的數字是否包含結尾零。 | NumberFormatter | ||
useGrouping : Boolean
格式化數字時,啟用分組分隔符號。 | NumberFormatter |
方法 | 定義自 | ||
---|---|---|---|
NumberFormatter(requestedLocaleIDName:String)
建構新 NumberFormatter 物件,以根據特定地區設定的慣例,格式化數字。 | NumberFormatter | ||
格式化 int 值。 | NumberFormatter | ||
格式化數字值。 | NumberFormatter | ||
格式化單位值。 | NumberFormatter | ||
[靜態]
列出此類別支援的所有地區設定 ID 名稱。 | NumberFormatter | ||
指出物件是否有已定義的指定屬性。 | Object | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
剖析字串並傳回包含剖析後元素的 NumberParseResult 物件。 | NumberFormatter | ||
剖析只含數字與選擇性空白字元的字串,然後傳回一個數字。 | NumberFormatter | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
會傳回指定之物件的字串形式。 | Object | ||
會傳回指定之物件的基本值。 | Object |
actualLocaleIDName | 屬性 |
actualLocaleIDName:String
[唯讀] 語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
此 NumberFormatter 物件所使用的實際地區設定 ID 名稱。
根據作業系統與 requestedLocaleIDName
參數傳送到 Collator()
建構函式的值,此值有三種可能性。
- 若要求的地區設定不是
LocaleID.DEFAULT
,而且作業系統支援要求的地區設定,則傳回的名稱會與requestedLocaleIDName
屬性相同。 - 若使用
LocaleID.DEFAULT
當作建構函式requestedLocaleIDName
參數的值,則會使用使用者作業系統指定的目前地區設定名稱。LocaleID.DEFAULT
值會將使用者的自訂設定保留於作業系統中。即使兩個地區設定 ID 名稱是相同的,傳送明確的值作為requestedLocaleIDName
參數所得的結果,也未必與使用LocaleID.DEFAULT
相同。使用者可能在自己電腦上已有自訂的地區設定,若要求明確的地區設定 ID 名稱而不是使用LocaleID.DEFAULT
的話,您的應用程式不會擷取這些自訂設定。 - 若系統不支援建構函式所指定的
requestedLocaleIDName
,則會提供後援地區設定 ID 名稱。
實作
public function get actualLocaleIDName():String
相關 API 元素
decimalSeparator | 屬性 |
decimalSeparator:String
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
用來格式化或解析含有小數部分的數值之小數分隔字元。
此屬性的初始設定,會根據建構格式化程式物件時選取的地區設定而定。
若將某值指派給此屬性,而且沒有錯誤或警告,則 lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
預設值為 dependent on the locale and operating system.。
實作
public function get decimalSeparator():String
public function set decimalSeparator(value:String):void
擲回值
TypeError — 若此屬性被指派 null 值。
|
相關 API 元素
digitsType | 屬性 |
digitsType:uint
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
定義格式化數字時所用的位數字元集。
不同的語言與區域使用不同的字元集來表示數字 0 到 9。此屬性會定義要使用的位數組。
此屬性的值代表十進位位數組中,數字零的 Unicode 值。此屬性的有效值定義於 NationalDigitsType 類別中。
若將某值指派給此屬性,而且沒有錯誤或警告,則 lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
預設值為 dependent on the locale and operating system.。
實作
public function get digitsType():uint
public function set digitsType(value:uint):void
擲回值
TypeError — 若此屬性被指派 null 值。
|
相關 API 元素
fractionalDigits | 屬性 |
fractionalDigits:int
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
小數分隔符號後可出現的最大位數。
數字會根據此屬性指定的位數,進行四捨五入。四捨五入配置會隨使用者的作業系統而異。
若 trailingZeros
屬性設為 true
,數字的小數部份 (小數點後的部分) 會在結尾填補零至此 fractionalDigits
屬性值指定的長度。
若將某值指派給此屬性,而且沒有錯誤或警告,則 lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
預設值為 0。
實作
public function get fractionalDigits():int
public function set fractionalDigits(value:int):void
相關 API 元素
groupingPattern | 屬性 |
groupingPattern:String
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
說明已格式化數字字串中,分組分隔符號的位置。
若 useGrouping
屬性設為 true,會使用 groupingPattern
屬性來定義分組分隔符號的位置與樣式。
分組樣式定義為包含數字的字串,這些數字以分號隔開,而且可選擇性以星號結尾。例如:"3;2;*"
。此字串中的各個數字都代表分組中的位數。分組分隔符號會置於每一組位數前。字串結尾的星號表示要重複使用此位數組別,對字串的其餘部分進行格式化。若沒有星號,表示格式化字串的其餘部分不會有其他組別或分隔符號。
字串中第一個數字代表小數分隔符號向左算起的第一組該有幾位數。後續數字定義向左算起各後續組別中的位數。因此「3;2;*」這個字串表示,第一個分組分隔符號放第一組 3 位數後,其他部分以 2 位數分組。例如:98,76,54,321
下表顯示以不同分組樣式對數字 123456789.12 進行格式化的結果。分組分隔符號為逗點,小數分隔符號為句點。
分組樣式 | 範例格式 |
3;* | 123,456,789.12 |
3;2;* | 12,34,56,789.12 |
3 | 123456,789.12 |
可定義的分組大小數目有限。在某些作業系統上,分組樣式只能包含兩個數字加上一個星號。其他作業系統可支援最多四個數字和一個星號。對於沒有星號的樣式,有些作業系統只支援一個數字,有些作業系統支援最多三個數字。若超出分組樣式元素上限,會忽略其他元素,並設定 lastOperationStatus
屬性,如下所述。
若將某值指派給此屬性,而且沒有錯誤或警告,則 lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
實作
public function get groupingPattern():String
public function set groupingPattern(value:String):void
擲回值
TypeError — 若此屬性被指派 null 值。
|
相關 API 元素
groupingSeparator | 屬性 |
groupingSeparator:String
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
用於分組分隔符號的字元或字串。
當 useGrouping
屬性設為 true
時,會在格式化數字時使用此屬性的值當做分組分隔符號。此屬性的初始設定,會根據建構格式化程式物件時選取的地區設定而定。
若將某值指派給此屬性,而且沒有錯誤或警告,則 lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
預設值為 dependent on the locale and operating system.。
實作
public function get groupingSeparator():String
public function set groupingSeparator(value:String):void
擲回值
TypeError — 若此屬性被指派 null 值。
|
相關 API 元素
lastOperationStatus | 屬性 |
leadingZero | 屬性 |
leadingZero:Boolean
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
指定若小數分隔符號左邊沒有整數位數,是否要在格式化的數字中補上開頭的零。
若此屬性設為 true
,會在格式化 -1.0 至 1.0 之間的數值時,在小數分隔符號左邊補上零。若此屬性設為 false
,則不會包含開頭的零。
例如,若數字為 0.321,且此屬性設為 true
,則格式化後的字串會包含開頭的零。若此屬性設為 false
,則不會包含開頭的零。在這種情況下,字串只會包含小數分隔符號,後面接著小數位數,如 .321
。
下表顯示根據此屬性與相關 fractionalDigits
和 trailingZeros
屬性的值,對數字進行格式化的結果。
trailingZeros | leadingZero | fractionalDigits | 0.12 | 0 |
true | true | 3 | 0.120 | 0.000 |
false | true | 3 | 0.12 | 0 |
true | false | 3 | .120 | .000 |
false | false | 3 | .12 | 0 |
若將某值指派給此屬性,而且沒有錯誤或警告,則 lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
預設值為 dependent on the locale and operating system.。
實作
public function get leadingZero():Boolean
public function set leadingZero(value:Boolean):void
擲回值
TypeError — 若此屬性被指派 null 值。
|
相關 API 元素
negativeNumberFormat | 屬性 |
negativeNumberFormat:uint
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
表示負值格式化樣式的數值。此樣式定義格式化後的數字中,負號或括弧相對於數字部分的位置。
下表摘要可能的負值格式。格式化負值時,會以 negativeSymbol
屬性的值取代格式中的負號,並以格式化後的數值取代「n」字元。
負值格式類型 | 格式 |
0 | (n) |
1 | -n |
2 | - n |
3 | n- |
4 | n - |
若將某值指派給此屬性,而且沒有錯誤或警告,則 lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
預設值為 dependent on the locale and operating system.。
實作
public function get negativeNumberFormat():uint
public function set negativeNumberFormat(value:uint):void
擲回值
ArgumentError — 若指派的值不是 0 到 4 之間的數。
|
相關 API 元素
negativeSymbol | 屬性 |
negativeSymbol:String
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
格式化負值時要使用的負號。
對小於零的數字進行格式化時,會使用此符號搭配負值格式。並不會用於未包含負號的負值格式 (例如,包含於括弧中的負值)。
此屬性會被設為建構格式化程式時,所選實際地區設定的預設值。亦可設為覆寫預設設定的其他值。
若將某值指派給此屬性,而且沒有錯誤或警告,則 lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
實作
public function get negativeSymbol():String
public function set negativeSymbol(value:String):void
擲回值
MemoryError — 若系統無法配置足夠的內部記憶體。
|
相關 API 元素
requestedLocaleIDName | 屬性 |
requestedLocaleIDName:String
[唯讀] 語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
傳送到此 NumberFormatter 物件建構函式的所要求地區設定 ID 名稱。
若使用 LocaleID.DEFAULT
值,則傳回的名稱會是 "i-default"。若採用後援地區設定,則所用的實際地區設定可能與要求的地區設定不同。您可以使用 actualLocaleIDName
屬性擷取實際地區設定名稱。
實作
public function get requestedLocaleIDName():String
相關 API 元素
trailingZeros | 屬性 |
trailingZeros:Boolean
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
指定格式化後的數字是否包含結尾零。
若此屬性設為 true
,格式化後的數字小數部分會包含結尾零,補滿至 fractionalDigits
屬性所指定的位數。若此屬性設為 false
,則不會顯示結尾零。
例如,若數值為 123.4,且此屬性設為 true,而 fractionalDigits
屬性設為 3,則格式化後的字串會顯示結尾零,如 123.400
。若此屬性為 false
,則字串中不會有結尾零,而只會顯示小數分隔符號,接著非零小數位數 (如 123.4
)。
下表顯示根據此屬性與相關 fractionalDigits
和 leadingZero
屬性的值,對數字進行格式化的結果。
trailingZeros | leadingZero | fractionalDigits | 0.12 | 0 |
true | true | 3 | 0.120 | 0.000 |
false | true | 3 | 0.12 | 0 |
true | false | 3 | .120 | .000 |
false | false | 3 | .12 | 0 |
若將某值指派給此屬性,而且沒有錯誤或警告,則 lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
預設值為 dependent on the locale and operating system.。
實作
public function get trailingZeros():Boolean
public function set trailingZeros(value:Boolean):void
擲回值
TypeError — 若此屬性被指派 null 值。
|
相關 API 元素
useGrouping | 屬性 |
useGrouping:Boolean
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
格式化數字時,啟用分組分隔符號。
若 useGrouping
屬性設為 true
,會將位數分組,並以分組分隔字元隔開。例如:123,456,789.22
若 useGrouping
屬性設為 false
,位數之間就不會有分組或隔開的動作。例如:123456789.22
要當作分組分隔符號使用的符號,是由 groupingSeparator
屬性所定義。分組分隔符號之間的位數,是由 groupingPattern
屬性所定義。
若將某值指派給此屬性,而且沒有錯誤或警告,則 lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
實作
public function get useGrouping():Boolean
public function set useGrouping(value:Boolean):void
相關 API 元素
NumberFormatter | () | 建構函式 |
public function NumberFormatter(requestedLocaleIDName:String)
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
建構新 NumberFormatter 物件,以根據特定地區設定的慣例,格式化數字。
此建構函式會判斷目前的作業系統是否支援要求的地區設定 ID 名稱。若不支援,則會改用後援地區設定。若使用後援地區設定,則 lastOperationStatus
屬性會指示後援類型,而 actualLocaleIDName
屬性會包含後援地區設定 ID 的名稱。
若要根據使用者目前作業系統的偏好設定進行格式化,請將 requestedLocaleIDName
參數中的 LocaleID.DEFAULT
值傳送到建構函式。
若建構函式成功完成,lastOperationStatus
屬性就會被設為:
LastOperationStatus.NO_ERROR
若要求的地區設定 ID 名稱無法使用,則 lastOperationStatus
會被設為下列之一:
LastOperationStatus.USING_FALLBACK_WARNING
LastOperationStatus.USING_DEFAULT_WARNING
若目前的作業系統不支援此類別,lastOperationStatus
屬性會被設為:
LastOperationStatus.UNSUPPORTED_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus 類別中定義的常數之一。
如需有關上方列出的警告以及 lastOperationStatus
屬性的其他可能值的詳細資訊,請參閱 LastOperationStatus
類別的說明。
requestedLocaleIDName:String — 判斷數字格式時偏好的地區設定 ID 名稱。
|
擲回值
TypeError — 若 requestedLocaleIDName 為 null
|
相關 API 元素
formatInt | () | 方法 |
public function formatInt(value:int):String
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
格式化 int 值。此函數等同於 formatNumber()
方法,只是會取用 int
值。若傳進來的值太大或太小 (例如,大於 1.72e308 或小於 1.72e-308),則此函數會傳回 0。
當此方法被呼叫並成功完成時,lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
參數
value:int — 要格式化的 int 值。
|
String — 已格式化的數字字串。
|
擲回值
MemoryError — 對於任何內部記憶體配置問題。
|
相關 API 元素
formatNumber | () | 方法 |
public function formatNumber(value:Number):String
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
格式化數字值。
此函數會根據格式化程式的屬性值,對數字進行格式化。建立 numberFormatter 物件之後若未修改屬性,就會根據 actualLocaleIDName 判定出來的作業系統之地區設定特定慣例,對數字進行格式化。若要自訂格式,可修改屬性以控制格式化數字時的特定選項。
此函數可以格式化極大的數和極小的純數。但有效位數受到 Number 物件提供之精確度的限制。不支援科學記號。
當此方法被呼叫並成功完成時,lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
參數
value:Number — 要格式化的數值。
|
String — 已格式化的數字字串。
|
擲回值
MemoryError — 若發生任何內部記憶體配置問題。
|
相關 API 元素
formatUint | () | 方法 |
public function formatUint(value:uint):String
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
格式化單位值。此函數等同於 formatNumber()
方法,只是會取用 uint
值。若傳進來的值太大 (例如,大於 1.72e308),此函數就會傳回 0。
當此方法被呼叫並成功完成時,lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
參數
value:uint — 單位值。
|
String — 已格式化的數字字串。
|
擲回值
MemoryError — 若發生任何內部記憶體配置問題。
|
相關 API 元素
getAvailableLocaleIDNames | () | 方法 |
public static function getAvailableLocaleIDNames():Vector.<String>
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
列出此類別支援的所有地區設定 ID 名稱。
若目前的作業系統不支援此類別,此方法會傳回 null 值。
當此方法被呼叫並成功完成時,lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
Vector.<String> — 包含此類別支援的所有地區設定 ID 名稱之字串向量。
|
parse | () | 方法 |
public function parse(parseString:String):NumberParseResult
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
剖析字串並傳回包含剖析後元素的 NumberParseResult 物件。
NumberParseResult 物件包含在輸入字串中找到的第一個數字值、字串中數字的起始索引,和字串中該數字後的第一個字元之索引。
若字串未包含數字,NumberParseResult 的 value 屬性會被設為 NaN
,而 startIndex
和 endIndex
屬性會被設為十六進位值 0x7fffffff
。
此函數使用 decimalSeparator
屬性的值,判斷數字中包含小數位數的部分,使用 groupingSeparator
屬性,判斷這些位數中可使用哪些字元,並使用 negativeNumberFormat
屬性控制負值表示方式。
下表區分各種 NegativeNumberFormat 值剖析出的字串結果:
NegativeNumberFormat | 輸入字串 | 結果 |
(n) | "(123)" 或 "( 123 )" | "-123" |
-n | "-123" 或 "- 123" | "-123" |
- n | "-123" 或 "- 123" | "-123" |
n- | "123-" 或 "123 -" | "-123" |
n - | "123-" 或 "123 -" | "-123" |
數字與負號或括弧之間,可以有一個空白字元。
判斷有效數字時會忽略其他屬性。具體而言,digitsType
屬性的值會被忽略,因此位數可以是 NationalDigitsType 類別中列舉出的任何位數組。groupingPattern
和 useGrouping
屬性的值不會影響數字解析過程。
若字串中的數字前後有加號「+」,會將加號視為非數字部份的字元。
此函數不會剖析包含科學標記法數字的字串 (例如 1.23e40)。
當此方法被呼叫並成功完成時,lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
參數
parseString:String |
NumberParseResult |
擲回值
TypeError — 若 parseString 為 null
|
相關 API 元素
範例 ( 如何使用本範例 )
var nf:NumberFormatter = new NumberFormatter("fr-FR"); var str:String = "1,56 mètre" var result:NumberParseResult = nf.parse(str); trace(result.value) // 1.56 trace(str.substr(0,result.startIndex)); // "" trace(str.substr(result.startIndex, result.endIndex)); // "1,56" trace(str.substr(result.endIndex)); // " mètre"
parseNumber | () | 方法 |
public function parseNumber(parseString:String):Number
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10.1, AIR 2 |
剖析只含數字與選擇性空白字元的字串,然後傳回一個數字。若字串開頭不是數字,或包含空白以外的非數字字元,則此方法會傳回 NaN
。數字位數前後的空白會被忽略。在 Unicode Character Database (請參閱 http://www.unicode.org/ucd/) 中,空白字元是具有 Space Separator (Zs) 屬性的字元。
如果數字前面或後面接著加號 '+',會將它視為非空白的字元。傳回值為 NaN
。
如需數字剖析或有效數字的組成等詳細資訊,請參閱剖析函數的說明。
當此方法被呼叫並成功完成時,lastOperationStatus
屬性會被設為:
LastOperationStatus.NO_ERROR
否則,lastOperationStatus
屬性會被設為 LastOperationStatus
類別中定義的常數之一。
參數
parseString:String |
Number |
擲回值
TypeError — 若 parseString 為 null
|
相關 API 元素
此範例使用下列地區設定:數字格式的預設作業系統地區設定,日文 (日本)、英文 (美國) 和法文 (法國)。這個範例使用靜態成員 LocaleID.DEFAULT
來要求預設的作業系統地區設定。
此範例結果可能會根據作業系統和使用者偏好設定而有所不同。
此範例會為清單中的每一個地區設定執行以下動作:
- 建立 NumberFormatter 物件。
- 將相同的值格式化成 Number、整數以及未加正負號的整數並顯示結果。
package { import flash.globalization.NumberFormatter; import flash.globalization.LocaleID; public class NumberFormatterExample extends Sprite { public function NumberFormatterExample():void { var localeNames:Array = [LocaleID.DEFAULT,"ja_JP","en_US","fr_FR"]; for ( var i:int = 0; i < localeNames.length; i++ ) { var nf:NumberFormatter = new NumberFormatter( localeNames[i] as String ); trace('\n\n' + "LocaleID requested: " + nf.requestedLocaleIDName + "; actual: " + nf.actualLocaleIDName); trace( "Last Operation Status:" + nf.lastOperationStatus ); var numberString:String = nf.formatNumber(123456789.19); trace( "Formatted Number:" + numberString); numberString = nf.formatInt(-123456789); trace( "Formatted Int:" + numberString); numberString = nf.formatUint(123456789); trace( "Formatted UInt:" + numberString); } } } }
此範例結果可能會根據作業系統和使用者偏好設定而有所不同。
這個範例會執行下列動作:
- 建立 NumberFormatter 物件。
- 呼叫
NumberFormatter.parse()
方法來剖析字串並傳回 NumberParseResult 物件。 - 呼叫
NumberFormatter.parseNumber()
方法來剖析字串並傳回 Number 值。
package { import flash.globalization.NumberFormatter; import flash.globalization.NumberParseResult; import flash.globalization.LastOperationStatus; import flash.globalization.LocaleID; public class NumberFormatterParseExample { public function NumberFormatterParseExample():void { var nf:NumberFormatter = new NumberFormatter( "en_US" ); trace("LocaleID requested: " + nf.requestedLocaleIDName + "; actual: " + nf.actualLocaleIDName); trace( "Last Operation Status:" + nf.lastOperationStatus ); var inputNumberString:String = "123,567,89,0.254"; var parseResult:NumberParseResult = nf.parse(inputNumberString); if ( nf.lastOperationStatus == LastOperationStatus.NO_ERROR ) { trace("Parsed value:" + parseResult.value); } inputNumberString = "-123,567,89,0.254"; var parsedNumber:Number = nf.parseNumber(inputNumberString); if ( nf.lastOperationStatus == LastOperationStatus.NO_ERROR ) { trace("Parsed value:" + parsedNumber); } } } }
Tue Jun 12 2018, 03:47 PM Z