因為沒有學過其他編程語言,因此作為我的第一門編程“母語”我在這就不舉其他編程語言的例子了,JavaScript這個動態類型腳本語言的變數號稱是沒有類型的,那麼我們怎麼轉換他的變數呢?而且還要強行轉換。 JavaScript的變數的確是沒有類型的,就是說你用var聲明變數後,可以隨便給變數賦值,不會有 ...
因為沒有學過其他編程語言,因此作為我的第一門編程“母語”我在這就不舉其他編程語言的例子了,JavaScript這個動態類型腳本語言的變數號稱是沒有類型的,那麼我們怎麼轉換他的變數呢?而且還要強行轉換。
JavaScript的變數的確是沒有類型的,就是說你用var聲明變數後,可以隨便給變數賦值,不會有任何問題。可是賦給變數的值本身自己是有類型地,例如String,Object,Boolean和Number等。所以JavaScript的變數本身還是有類型轉換的,當然很多時候JavaScript解析引擎會預設處理很多的類型轉換。不過有時候也需要強行轉換數據類型,最常見的就是:“”+數字 +數字,這種情況會生成字元串累加。
- Number函數,可以將數值字元串,對象,和布爾型變數強制轉換成數字型的。
- Object函數,可以將數值字元串,數字,和布爾型變數強制轉換成對象型的。
- String函數,可以將數字,對象,和布爾型變數強制轉換成字元串型的。
- Boolean函數,可以將數值字元串,對象,和數字型變數強制轉換成布爾型的。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>JavaScript中的強制類型轉換</title> </head> <body> <center> <h1>JavaScript中的強制類型轉換</h1> <hr> <br> <h5>顯示如下變更信息……</h5> <pre> <script> var str = '100';//聲明一個字元串變數str,初始值是“100” var num = Number(str);//用number強制類型轉換將str轉換為數字類型並賦值給num變數 document.writeln(typeof(num) + ':' + num);//列印num的類型和值 var obj = Object(str);//用object強制類型轉換將str轉換成對象類型並賦值給obj變數 document.writeln(typeof(obj) + ':' + obj);//列印obj的類型和值 var bool = Boolean(str);//用Boolean強制類型轉換將str轉換成布爾類型並賦值給bool變數 document.writeln(typeof(bool) + ':' + bool);//列印bool的類型和變數 document.writeln(); var num = 100 ;//聲明一個字元串變數num,初始值為100 var str = String(num);//用string強制類型轉換將num轉換為字元類型並賦值給str變數 document.writeln(typeof(str) + ':' + str); var bool = Boolean(num); document.writeln(typeof(bool) + ':' + bool); var obj = Object(num); document.writeln(typeof(obj) + ':' + obj); document.writeln(); var bool = true; var str = String(bool); document.writeln(typeof(str) + ':' + str); var num = Number(bool); document.writeln(typeof(num) + ':' + num); var obj = Object(bool); document.writeln(typeof(obj) + ':' + obj); document.writeln; var obj = {}; var str = String(obj); document.writeln(typeof(str) + ':' + str); var num = Number(obj); document.writeln(typeof(num) + ':' + num); var bool = Boolean(obj); document.writeln(typeof(bool) + ':' + bool); </script> </pre> </center> </body> </html>