顯式轉(zhuǎn)換:
Number(數(shù)據(jù))
轉(zhuǎn)換成number類型
如果傳入的是字符串:
字符串的內(nèi)容不能包含非數(shù)字砰嘁,只要包含非數(shù)字那么都是轉(zhuǎn)成NaN
簡(jiǎn)單來(lái)說(shuō):字符串里面只要不是數(shù)字的寫法都轉(zhuǎn)成NaN
如果字符串內(nèi)容是數(shù)字的寫法件炉,兩邊有空格勘究,能轉(zhuǎn)成這個(gè)數(shù)字
如果字符串內(nèi)容是數(shù)字但是中間有空格,轉(zhuǎn)成NaN
如果傳入布爾
true就是1
false就是0
NaN和undefined都轉(zhuǎn)成NaN
null轉(zhuǎn)成0
Infinity轉(zhuǎn)成Infinity
parseInt(數(shù)據(jù)):
如果能轉(zhuǎn)換成數(shù)字斟冕,轉(zhuǎn)換出來(lái)的一定是整數(shù)
原理:從左往右依次轉(zhuǎn)口糕,如果是數(shù)字就轉(zhuǎn)成數(shù)字,如果是非數(shù)字就停止
妙用:如果對(duì)一個(gè)小數(shù)不想向上取整磕蛇,也不想向下取整景描,也不想四舍五入
只是要整數(shù)部分,所以可以用parseInt
前后有空格也能轉(zhuǎn)成數(shù)字
中間有空格秀撇,就只轉(zhuǎn)到前面的
parseFloat:
除了可以轉(zhuǎn)整數(shù)超棺,還可以轉(zhuǎn)小數(shù)
原理:從左往右依次轉(zhuǎn)換,遇到第一個(gè)小數(shù)點(diǎn)會(huì)當(dāng)小數(shù)呵燕,后面還遇到其他非數(shù)字就停止
隱式轉(zhuǎn)換:
自動(dòng)轉(zhuǎn)換
直接在字符串前面寫一個(gè)+就能轉(zhuǎn)換成數(shù)字, 原來(lái)是內(nèi)容是什么數(shù)字就是什么數(shù)字
直接在字符串前面寫一個(gè)-就能轉(zhuǎn)換成數(shù)字,原來(lái)內(nèi)容是什么數(shù)字就是他的相反數(shù)
+和-前面不要加任意數(shù)據(jù)棠绘,如果加了,就相當(dāng)于運(yùn)算
一般用+來(lái)轉(zhuǎn)換成數(shù)字再扭,規(guī)則跟Number那種是一樣的
參與除了+以外的運(yùn)算也會(huì)自動(dòng)轉(zhuǎn)換成數(shù)字(建議還是自己先用+轉(zhuǎn)換)
-氧苍,*,/霍衫,%
prompt接收到的數(shù)據(jù)是字符串類型候引,所以如果想轉(zhuǎn)換成數(shù)字,就prompt前面寫個(gè)+就行了
string(數(shù)據(jù))
string()//可以把任何數(shù)據(jù)轉(zhuǎn)換成string類型
變量名+toString();//方法
只能用在變量上,不能用在直接量;變量的值如果是undefined,null,結(jié)果會(huì)報(bào)錯(cuò);
Boolean(數(shù)據(jù));
除了0敦跌、空字符串("",''),undefined,null,NaN轉(zhuǎn)換成false以外澄干,其他都會(huì)轉(zhuǎn)換成true