第一次來到 stackoverflow,但我真的需要幫助來重構這個字串。
所以基本上是在Actionscript中,我需要重構Millions-string來輸出為1.23M,也就是包含百萬和千的字串,因為目前它只顯示1M。我聽說toFixed可以做到這一點,但我似乎無法讓它發揮我的優勢。
任何例子都會有幫助,謝謝你!
。 public static function balanceToString(value: int):String
{
var suffix:String = ""/span>;
var resultValue:int = value;
if (value >= 1000000)
{
resultValue = Math.floor(resultValue / 1000000)。
resultValue.toFixed(4)。
后綴 = "M"。
}
else if (value >=100000)
{
resultValue = Math.floor(resultValue / 1000)。
后綴 = "K"。
}
return "" resultValue.toString() suffix。
}
<iframe name="sif1" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
uj5u.com熱心網友回復:
你在簽名中把數字轉換為int。
試試用Number代替吧。
public static function balanceToString(value。 Number):String
{
var suffix:String = "。
var resultValue:Number = value;
if (value >= 1000000)
{
resultValue = Math.floor(resultValue / 1000000)。
resultValue.toFixed(4)。
后綴 = "M"。
}
else if (value >=100000)
{
resultValue = Math.floor(resultValue / 1000)。
后綴 = "K"。
}
return "" resultValue.toString() suffix;
}
uj5u.com熱心網友回復:
我想是這樣的,
。實施:
public static function balanceToString(value: int):String
{
var suffix:String = ""/span>;
var divisor:Number = 1;
var precision:Number = 0;
if (value >= 100000)
{
//這也會將123456顯示為0.12M。
除數 = 1000000;
Precision = 2;
后綴 = "M"。
}
else if (value >=500)
{
//這將顯示543為0.5K.。
除數 = 1000;
Precision = 1;
后綴 = "K"。
}
// This allows you to control, how many digits to display after.
//關于實際數字的大小,點.分隔符。
precision = Math.round(Math. log(divisor / value) / Math.LN10) 精度。
Precision = Math.min(2, Math. max(0, precision)) 。
//這就是.toFixed(...)方法的正確用法。
return (value / divisor).toFixed( precision) suffix;
}
使用方法:
trace(balanceToString(12)); / 12
trace(balanceToString(123)); / 123
trace(balanceToString(543)); //0.5K。
trace(balanceToString(567)); // 0.6K
trace(balanceToString(1234)); // 1.2K
trace(balanceToString(12345)); // 12K
trace(balanceToString(123456)); //0.12M。
trace(balanceToString(1234567)); // 1.23M
trace(balanceToString(12345678)); //12.3M。
trace(balanceToString(123456789)); // 123M
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/319522.html
標籤:
