字符串->數(shù)值
- Number(argument1:AnyType)
- parseInt(argument1:String,argument2:Int)
- parseFloat(argument1:String)
Number()
Number()函數(shù)可以用于想要轉(zhuǎn)換為數(shù)值類型的任何數(shù)據(jù)類型
- Boolean:Number(true)=1,Number(false)=0
- Number:Number(value)=value
- null:Number(null)=0
- undefined:Number(undefined)=NaN
- String:
- 字符串中只包含數(shù)字(包括前面帶正負(fù)號的情況),則將其轉(zhuǎn)換為十進制數(shù)值(忽略前導(dǎo)零)
- 字符串中包含有效的浮點格式,則將其轉(zhuǎn)換為對應(yīng)的浮點數(shù)值(同樣忽略前導(dǎo)零)
- 字符串中包含有效的十六進制格式(0x開頭),則將其轉(zhuǎn)換為相同大小的十進制整數(shù)值。
- 字符串為空,則轉(zhuǎn)換為零
- 字符串包含除上述格式外的字符,則轉(zhuǎn)換為NaN.
parseInt()
只能用來把字符串轉(zhuǎn)換為整數(shù):
- 如果第一個非空字符不是數(shù)字字符或正負(fù)號,返回NaN
- 如果第一個非空字符串是數(shù)字字符,則繼續(xù)解析第二個字符,直到解析完所有字符或者遇到一個非數(shù)字字符停止
- 同時該函數(shù)能識別出十進制、十六進制(0x開頭)、八進制(0開頭)(可以為這個函數(shù)提供第二個參數(shù)10、16、8來確定轉(zhuǎn)換為何種進制,如果指定了第二個參數(shù),10進制和8進制也可以不帶開頭)
parseFloat()
- 字符串中的第一個小數(shù)點是有效的,之后的多余小數(shù)點則被視為非數(shù)字字符
- 只能識別十進制
- 若字符串包含的是可被解析被整數(shù)的數(shù),則返回整數(shù)
數(shù)值->字符串
::toString(argument:Int)
參數(shù)可以是2、8、10、16表示輸出何種進制數(shù)值的字符串
將一個值轉(zhuǎn)換成一個字符串有兩種方法,一是使用toString()方法,二是使用轉(zhuǎn)型函數(shù)String()。下面是一些需要注意的問題:
大多類型都有toString()方法,除了null和undefined類型。
對于字符串型的值也可以使用toString()方法,它會返回該字符串的一個副本。
默認(rèn)情況下 參數(shù)是10。要說明的是對于非數(shù)值類型(boolean,string等)設(shè)置toString()的參數(shù)是無效的
任何值都可以使用String()方法。它的過程是這樣的
首先,如果值有toString()方法,那么則使用該方法(無參數(shù))。
其次,那就是該值沒有toString()方法,那就是 null 返回 "null",undefined返回"undefined";