顯式轉(zhuǎn)換:
Number(數(shù)據(jù))
轉(zhuǎn)換成number類型
如果傳入的是字符串:
字符串的內(nèi)容不能包含非數(shù)字,只要包含非數(shù)字那么都是轉(zhuǎn)成NaN
簡單來說:字符串里面只要不是數(shù)字的寫法都轉(zhuǎn)成NaN
如果字符串內(nèi)容是數(shù)字的寫法,兩邊有空格,能轉(zhuǎn)成這個數(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)換出來的一定是整數(shù)
原理:從左往右依次轉(zhuǎn),如果是數(shù)字就轉(zhuǎn)成數(shù)字,如果是非數(shù)字就停止
妙用:如果對一個小數(shù)不想向上取整,也不想向下取整,也不想四舍五入
只是要整數(shù)部分,所以可以用parseInt
前后有空格也能轉(zhuǎn)成數(shù)字
中間有空格,就只轉(zhuǎn)到前面的
parseFloat:
除了可以轉(zhuǎn)整數(shù),還可以轉(zhuǎn)小數(shù)
原理:從左往右依次轉(zhuǎn)換,遇到第一個小數(shù)點會當(dāng)小數(shù),后面還遇到其他非數(shù)字就停止
隱式轉(zhuǎn)換:
自動轉(zhuǎn)換
直接在字符串前面寫一個+就能轉(zhuǎn)換成數(shù)字, 原來是內(nèi)容是什么數(shù)字就是什么數(shù)字
直接在字符串前面寫一個-就能轉(zhuǎn)換成數(shù)字,原來內(nèi)容是什么數(shù)字就是他的相反數(shù)
+和-前面不要加任意數(shù)據(jù),如果加了,就相當(dāng)于運(yùn)算
一般用+來轉(zhuǎn)換成數(shù)字,規(guī)則跟Number那種是一樣的
參與除了+以外的運(yùn)算也會自動轉(zhuǎn)換成數(shù)字(建議還是自己先用+轉(zhuǎn)換)
-,*,/,%
prompt接收到的數(shù)據(jù)是字符串類型,所以如果想轉(zhuǎn)換成數(shù)字,就prompt前面寫個+就行了
string(數(shù)據(jù))
string()//可以把任何數(shù)據(jù)轉(zhuǎn)換成string類型
變量名+toString();//方法
只能用在變量上,不能用在直接量;變量的值如果是undefined,null,結(jié)果會報錯;
Boolean(數(shù)據(jù));
除了0、空字符串("",''),undefined,null,NaN轉(zhuǎn)換成false以外,其他都會轉(zhuǎn)換成true