網(wǎng)站制作NEWS
flash制作計(jì)算器,12+12為什么等于1212而不是24
因?yàn)閺妮斎胛谋究虻玫降臄?shù)據(jù)類(lèi)型是String,也就是字符串
所以當(dāng)你輸入兩個(gè)12的時(shí)候,它所進(jìn)行的運(yùn)算不是12+12,而是"12"+"12"
不知道你套用其他公式指的是什么,總之不把數(shù)據(jù)類(lèi)型轉(zhuǎn)換過(guò)來(lái),是無(wú)法進(jìn)行數(shù)學(xué)運(yùn)算的
將String轉(zhuǎn)化為Number可以用Number()
將Number轉(zhuǎn)化為String可以用String(),也可以用""+12這樣的方法
假設(shè)兩個(gè)輸入文本框的名字為t1和t2,另有一個(gè)輸出文本框名為t3
按下按鈕btn的時(shí)候在輸出文本框t3顯示兩者相加的結(jié)果
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ù)據(jù)并轉(zhuǎn)化為數(shù)字
num2 = Number(t2.text);
num3 = num1 + num2; //進(jìn)行相加
t3.text = String(num3); //在t3中顯示,這句也可以寫(xiě)成t3.text=""+num3;
}
最后一個(gè)步驟,如果你不轉(zhuǎn)化為String,有時(shí)flash也會(huì)幫你轉(zhuǎn)化了再顯示在文本框,有時(shí)則會(huì)報(bào)錯(cuò)。但理論上來(lái)說(shuō)文本框是不能顯示數(shù)字的,應(yīng)該先轉(zhuǎn)化為String,這一步最好還是不要省略
為了容易看懂把這個(gè)分了很多句來(lái)寫(xiě)···其實(shí)合并起來(lái)也可以用一句話(huà)搞掂
t3.text = "" + Number(t1.text) + Number(t2.text);
總之就是數(shù)據(jù)類(lèi)型的轉(zhuǎn)換,看懂了這些應(yīng)該就能解決你提出的問(wèn)題了,再根據(jù)你要制作的計(jì)算器功能修改吧
多重隨機(jī)標(biāo)簽