因为没有学过其他编程语言,因此作为我的第一门编程“母语”我在这就不举其他编程语言的例子了,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>

 摘自《JavaScript实力精通》

内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!