JavaScript 数据类型转换

138次阅读
没有评论

共计 1352 个字符,预计需要花费 4 分钟才能阅读完成。


一、类型转换简介

所谓的类型转换,就是将一种数据类型转换为另外一种数据类型,例如上一节课说到的,如果一个数字与一个字符串相加,JavaScript 会自动将数字转换为字符串,然后再与另外一个字符串相加(隐式类型转换)。

我们都知道,JavaScript 是一种弱类型的语言,这一点区别于传统编程语言(如 C 和 Java)。虽然在运算时,JavaScript 会自动进行类型转换,但是为了避免自动转换或不转换产生的不良后果,有时候我们需要进行显式的类型转换。

隐式类型转换指的是 JavaScript 自动进行的类型转换,显式类型转换指的是我们手动用代码强制进行的类型转换。

1、字符串型转换为数值型

在 JavaScript 中,将字符串型数据转换为数值型数据有 parseInt() 和 parseFloat() 这 2 种方法。其中,parseInt() 可以将字符串转换为整型数据;parseFloat() 可以将字符串转换为浮点型数据。

语法:

parseInt()  // 将字符串型转换为整型
parseFloat()  // 将字符串型转换为浮点型 

说明:将字符串型转换为整型,前提是字符串一定要是数值字符串。那什么叫数值字符串呢?“123”、“3.1415”这些只有数字的字符串就是数值字符串,而“hao123”、“360cn”等就不是数值字符串。

举例:

<!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>

在浏览器预览效果如下:

JavaScript 数据类型转换

分析:parseInt("3.14") 的结果是 3,而 parseFloat("3.14") 的结果是 3.14。大家好好理解一下。

2、数值型转换为字符串型

在 JavaScript 中,将数值型数据(整型或浮点型)转换为字符串,都是使用 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>

在浏览器预览效果如下:

JavaScript 数据类型转换

分析:这个例子虽然简单,不过涉及知识也不少。大家好好琢磨一下,也是非常值得思考的一个例子。

记住,算术运算符的两边必须都是数值,若在“+”运算中存在字符或字符串,则该表达式将是字符串表达式。因为 JavaScript 会自动将数值型数据转换成字符串型数据。

类型转换虽然内容比较少,但是在实际开发中,我们会经常要用到的。


正文完