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