我碰到這種怪異的行爲來,而在使用AS3的NumberFormatter。奇怪的NumberFormatter行爲,AS3
理解我需要使用NumberBaseRoundType.UP
是很重要的,因爲我需要在申請信用時使用NumberBaseRoundType.DOWN
。
考慮到具有爲2的值取整精度,我猜的NumberFormatter不應該改變我的電話號碼。在下面的例子中,2.43一次格式化成2.44 ..!
所以Math.pow(...)
是不是我要找的PLUS解決方案,我很有興趣瞭解什麼和爲什麼發生這種情況。謝謝!
var roundUp:NumberFormatter = new NumberFormatter();
roundUp.rounding = NumberBaseRoundType.UP;
roundUp.precision = 2;
trace(roundUp.format(2.41)); // Output : 2.41
trace(roundUp.format(2.42)); // Output : 2.42
trace(roundUp.format(2.43)); // Output : 2.44 <-- ???
trace(roundUp.format(2.44)); // Output : 2.44
trace(roundUp.format(2.45)); // Output : 2.46 <-- ???
trace(roundUp.format(2.46)); // Output : 2.46
我相信他在使用MX NumberFormatter,因爲Spark沒有定義'rounding'或'precision'屬性。 –
嗨,我正在使用FB 4.0.1包含在SDK 4.1.0中的mx.formatters.NumberFormatter類。當然,我將不得不寫我自己的班,因爲肯定會計系統不能依賴計算機語言環境..我在加拿大,但我總是使用美國設置,以避免任何問題..現在,我沒有任何線索..但我會嘗試進行一些測試並回復你們。謝謝!! – Jivago