2013-11-14 32 views
0

您好,我的Flash文件有問題。我有一個值,當你按下一個按鈕,它提高了0.2,但當我已經提出了3次,所以它等於0.6,但是當我把變量放在一個文本框中顯示以下(通過單擊按鈕):
1:0.2
2:0.4
3:0.6000000000000000
4:0.8
5:1
6:1.2
7:1.4
8:1.5999999999999999
如何設置值/變量的最大長度

所以對於某種原因它劑量提高了0.2或者它並不是所有的時間...所以任何人都可以幫助我如何設置一個值的最大長度或如何解決這個問題?所以這0.2每次提高:)

我對按鈕的代碼:

shop_1.addEventListener(MouseEvent.MOUSE_UP,shop_1_c); 
function shop_1_c(e:MouseEvent){ 
    if(ep >= 25){ 
    ep_per_second = ep_per_second+0.2; 
    ep = ep-25; 
    } 

回答

3

Number.toFixed()看看。這將允許您選擇一個數字中有多少個數字。這將返回四捨五入到參數中指定的小數位數的字符串版本。字符串中的值可能不一樣,在原來的號碼(即3.18.toFixed(1) = "3.2",不是3.1或者3.18)

如果由用戶輸入的值的值,你也可以看看TextField.maxChars,這將限制可以在TextField中輸入多少個字符(大多數其他文本輸入也具有相同的屬性)。

+0

謝謝你這麼多次! ^^我工作完美! :D – user2984101

+2

如果回答了您的問題,請將問題標記爲正確(答案旁邊數字下方的箭頭)。它將有效地解決問題並幫助保持系統清潔。 –

+2

我不確定你的意思是「......實際上會修改數字」。 'toFixed()'將會返回一個字符串化的數字* rounded *到提供的精度,但實際的'Number'不受影響。 –