- 相關推薦
javascript顯式類型轉換的方法分析
盡管js可以做許多自動類型轉換,但某些時候仍然需要做顯示類型轉換或為了代碼邏輯清晰易讀而做顯示類型轉換。
做顯示類型轉換最簡單的方法就是用Boolean()、Number()、String()或Object()函數:
Number("3") //3String(false) //"false"false.toString()//同上Boolean([]) //trueObject(3) //new Number(3)
js中的某些運算符會做隱式類型轉換,比如:
若+運算符一個操作數是字符串,則它會將另一個操作數轉換為字符串;
一元+運算符將其操作數轉換為數字;
一元!運算符將操作數轉換為布爾值并取反;
代碼中經?梢钥吹饺缦骂愋娃D換的用法:
x+"" //等價于String(x)+x //等價于Number(x)x-0 //同上!!x //等價于Boolean(x),是雙嘆號哦
Number類定義的toString()方法可以按轉換基數(radix)將數字轉換為其它進制數的字符串表示(2-36之間):
var n =11;bin_str = n.toString(2);oct_str = "0" + n.toString(8);hex_str = "0x" + n.toString(16);
Number類還為數字到字符串的類型轉換場景定義了另外3個方法:
toFixed()根據小數點后的指定位數將數字轉換為字符串,它從不使用指數記數法。
11.113344.toFixed(5) //"11.11334"
toExponential()使用指數記數法將數字轉換為指數形式的字符串,其中小數點前只有一位,小數點后位數由參數指定:
11.113359.toExponential(5) //"1.11134e+1"
toPrecision()根據指定的有效數字位數將數字轉換為字符串,如果有效數字位數小于數字整數部分的位數則轉換為指數形式。
以上3個方法都會適當的進行四舍五入或填充0.
需要說明的是前面提到的Number()函數只能基于十進制數進行轉換,而且不能出現非法字符。我們可以使用全局函數(不屬于任何類的方法)parseInt或parseFloat函數來進行字符串到數字的轉換;
parseInt()只解析整數,而parseFloat()可以解析整數和浮點數。
如果字符串前綴為”0x”或者”0X”,parseInt()將其解釋為16進制數;parseInt和parseFloat都會跳過任意數量的前導空格,且盡可能解析更多的數值字符;如果第一個非空格字符是非法數字,則返回NaN。
parseInt可以接收第二個可選參數,該參數指定數字轉換的基數,取值范圍是2-36.
【javascript顯式類型轉換的方法分析】相關文章:
JavaScript常用方法匯總10-25
JavaScript數組常用方法介紹09-04
javascript跨域訪問的方法07-09
javascript編程異常處理的方法08-04
JavaScript fontcolor方法入門實例07-07
Javascript函數的定義和用法分析08-15
javascript分析運算符用法08-07