1. 程式人生 > >JavaScript-強制型別轉換

JavaScript-強制型別轉換

  因為沒有學過其他程式語言,因此作為我的第一門程式設計“母語”我在這就不舉其他程式語言的例子了,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>