JavaScript數(shù)據(jù)類型轉(zhuǎn)換簡單方法舉例
一、類型轉(zhuǎn)換簡介
所謂的類型轉(zhuǎn)換,就是將一種數(shù)據(jù)類型轉(zhuǎn)換為另外一種數(shù)據(jù)類型,例如上一節(jié)課說到的,如果一個數(shù)字與一個字符串相加,JavaScript會自動將數(shù)字轉(zhuǎn)換為字符串,然后再與另外一個字符串相加(隱式類型轉(zhuǎn)換)。
我們都知道,JavaScript是一種弱類型的語言,這一點區(qū)別于傳統(tǒng)編程語言(如C和Java)。雖然在運算時,JavaScript會自動進行類型轉(zhuǎn)換,但是為了避免自動轉(zhuǎn)換或不轉(zhuǎn)換產(chǎn)生的不良后果,有時候我們需要進行顯式的類型轉(zhuǎn)換。
隱式類型轉(zhuǎn)換指的是JavaScript自動進行的類型轉(zhuǎn)換,顯式類型轉(zhuǎn)換指的是我們手動用代碼強制進行的類型轉(zhuǎn)換。
1、字符串型轉(zhuǎn)換為數(shù)值型
在JavaScript中,將字符串型數(shù)據(jù)轉(zhuǎn)換為數(shù)值型數(shù)據(jù)有parseInt()和parseFloat()這2種方法。其中,parseInt()可以將字符串轉(zhuǎn)換為整型數(shù)據(jù);parseFloat()可以將字符串轉(zhuǎn)換為浮點型數(shù)據(jù)。
語法:
parseInt() //將字符串型轉(zhuǎn)換為整型 parseFloat() //將字符串型轉(zhuǎn)換為浮點型
說明:將字符串型轉(zhuǎn)換為整型,前提是字符串一定要是數(shù)值字符串。那什么叫數(shù)值字符串呢?“123”、“3.1415”這些只有數(shù)字的字符串就是數(shù)值字符串,而“hao123”、“360cn”等就不是數(shù)值字符串。
舉例:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
var m=parseInt("3.14")+10;
var n=parseFloat("3.14")+10;
document.write(m+"<br/>");
document.write(n);
</script>
</head>
<body>
</body>
</html>在瀏覽器預覽效果如下:

分析:parseInt("3.14")的結(jié)果是3,而parseFloat("3.14")的結(jié)果是3.14。大家好好理解一下。
2、數(shù)值型轉(zhuǎn)換為字符串型
在JavaScript中,將數(shù)值型數(shù)據(jù)(整型或浮點型)轉(zhuǎn)換為字符串,都是使用toString()方法。
語法:
.toString()
舉例:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
var n=3.1415;
var str=n.toString()+926;
var num=n+926;
document.write(str+"<br/>");
document.write(num);
</script>
</head>
<body>
</body>
</html>在瀏覽器預覽效果如下:

分析:這個例子雖然簡單,不過涉及知識也不少。大家好好琢磨一下,也是非常值得思考的一個例子。
記住,算術運算符的兩邊必須都是數(shù)值,若在“+”運算中存在字符或字符串,則該表達式將是字符串表達式。因為JavaScript會自動將數(shù)值型數(shù)據(jù)轉(zhuǎn)換成字符串型數(shù)據(jù)。
類型轉(zhuǎn)換雖然內(nèi)容比較少,但是在實際開發(fā)中,我們會經(jīng)常要用到的。
二、JavaScript中數(shù)據(jù)類型轉(zhuǎn)換函數(shù)總結(jié)
在JavaScript中,可以使用一些內(nèi)置函數(shù)將一個數(shù)據(jù)類型轉(zhuǎn)換為另一個數(shù)據(jù)類型。這些內(nèi)置函數(shù)包括toString()、parseInt()、parseFloat()和Number()。
toString()
toString()方法可以將數(shù)字、字符串和布爾值轉(zhuǎn)換為字符串類型。例如:
var num = 123; var str = num.toString(); //將數(shù)字轉(zhuǎn)換為字符串 console.log(typeof str); //輸出: string var bool = true; var str = bool.toString(); //將布爾值轉(zhuǎn)換為字符串 console.log(typeof str); //輸出: string
parseInt()和parseFloat()
parseInt()和parseFloat()方法可以將字符串轉(zhuǎn)換為數(shù)字類型。parseInt()方法將字符串轉(zhuǎn)換為整數(shù)類型,而parseFloat()方法將字符串轉(zhuǎn)換為浮點數(shù)類型。例如:
var str = "123"; var num = parseInt(str); //將字符串轉(zhuǎn)換為整數(shù) console.log(typeof num); //輸出: number var str = "3.14"; var num = parseFloat(str); //將字符串轉(zhuǎn)換為浮點數(shù) console.log(typeof num); //輸出: number
注意:如果不能成功將字符串轉(zhuǎn)換為數(shù)字類型,則會返回NaN(非數(shù)值)。例如:
var str = "abc"; var num = parseInt(str); //將字符串轉(zhuǎn)換為整數(shù),但是失敗 console.log(num); //輸出: NaN
Number()
Number()方法可以將任何數(shù)據(jù)類型都轉(zhuǎn)換為數(shù)字類型。例如:
var str = "123";
var num = Number(str); //將字符串轉(zhuǎn)換為數(shù)字
console.log(typeof num); //輸出: number
var bool = true;
var num = Number(bool); //將布爾值轉(zhuǎn)換為數(shù)字
console.log(typeof num); //輸出: number
var obj = {a: 1};
var num = Number(obj); //將對象轉(zhuǎn)換為數(shù)字,但是失敗
console.log(num); //輸出: NaN需要注意的是,在將字符串轉(zhuǎn)換為數(shù)字時,Number()方法會嘗試將字符串轉(zhuǎn)換為整數(shù)或浮點數(shù)。如果轉(zhuǎn)換失敗,則返回NaN。
在進行數(shù)據(jù)類型轉(zhuǎn)換時,需要注意可能會導致意料之外的結(jié)果。例如,將字符串轉(zhuǎn)換為數(shù)字時,如果字符串中包含非數(shù)字字符,則會返回NaN。因此,在進行類型轉(zhuǎn)換之前,應該先進行數(shù)據(jù)類型的檢查以避免錯誤。
總結(jié)
到此這篇關于JavaScript數(shù)據(jù)類型轉(zhuǎn)換的文章就介紹到這了,更多相關JS數(shù)據(jù)類型轉(zhuǎn)換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
- js 數(shù)據(jù)類型轉(zhuǎn)換總結(jié)筆記
- JavaScript中的數(shù)據(jù)類型轉(zhuǎn)換方法小結(jié)
- JavaScript實現(xiàn)數(shù)據(jù)類型的相互轉(zhuǎn)換
- 詳解Javascript數(shù)據(jù)類型的轉(zhuǎn)換規(guī)則
- JavaScript中數(shù)據(jù)類型轉(zhuǎn)換總結(jié)
- javascript基本數(shù)據(jù)類型和轉(zhuǎn)換
- JavaScript的數(shù)據(jù)類型轉(zhuǎn)換原則(干貨)
- JavaScript數(shù)據(jù)類型轉(zhuǎn)換詳解(推薦)
相關文章
layui 監(jiān)聽彈窗關閉并刷新父級table的場景分析
這篇文章主要介紹了layui 監(jiān)聽彈窗關閉并刷新父級table的場景分析,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2024-07-07
JS動態(tài)修改iframe內(nèi)嵌網(wǎng)頁地址的方法
這篇文章主要介紹了JS動態(tài)修改iframe內(nèi)嵌網(wǎng)頁地址的方法,涉及javascript動態(tài)修改iframe中src屬性的技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-04-04

