網站制作NEWS
flash制作計算器,12+12為什么等于1212而不是24
因為從輸入文本框得到的數(shù)據類型是String,也就是字符串
所以當你輸入兩個12的時候,它所進行的運算不是12+12,而是"12"+"12"
不知道你套用其他公式指的是什么,總之不把數(shù)據類型轉換過來,是無法進行數(shù)學運算的
將String轉化為Number可以用Number()
將Number轉化為String可以用String(),也可以用""+12這樣的方法
假設兩個輸入文本框的名字為t1和t2,另有一個輸出文本框名為t3
按下按鈕btn的時候在輸出文本框t3顯示兩者相加的結果
btn.addEventListener(MouseEvent.CLICK,addition)
function addition(e:MouseEvent):void
{
var num1:Number;
var num2:Number;
var num3:Number;
num1 = Number(t1.text); //在這里獲取t1的數(shù)據并轉化為數(shù)字
num2 = Number(t2.text);
num3 = num1 + num2; //進行相加
t3.text = String(num3); //在t3中顯示,這句也可以寫成t3.text=""+num3;
}
最后一個步驟,如果你不轉化為String,有時flash也會幫你轉化了再顯示在文本框,有時則會報錯。但理論上來說文本框是不能顯示數(shù)字的,應該先轉化為String,這一步最好還是不要省略
為了容易看懂把這個分了很多句來寫···其實合并起來也可以用一句話搞掂
t3.text = "" + Number(t1.text) + Number(t2.text);
總之就是數(shù)據類型的轉換,看懂了這些應該就能解決你提出的問題了,再根據你要制作的計算器功能修改吧
多重隨機標簽