jilingxf

js之数据类型(1)

1、typeof  查看数据类型

可以返回number,string,Boolean,object,undefined,function

<!DOCTYPE html>
<html lange = "en">
<head>
    <meta charset="UTF-8">
    <title>js之  </title>
</head>
<body>
    <h1>js之  </h1>
    <script type="text/javascript">
            var num = 12;
            console.log(typeof(num));

    </script>


</body>

运行结果如下:

image

注意如下几个数据类型的输出

<!DOCTYPE html>
<html lange = "en">
<head>
    <meta charset="UTF-8">
    <title>js之数据类型  </title>
</head>
<body>
    <h1>js之数据类型  </h1>
    <script type="text/javascript">
            var num = 12
            console.log(typeof(num))
            var num = {}
            console.log(typeof(num))
            var num = []
            console.log(typeof(num))
            var num = null //null的数据类型:object
            console.log('null的数据类型:' + typeof(num))
            var num = undefined //undefined的数据类型:undefined
            console.log('undefined的数据类型:' + typeof(num))
            // var str = '2'
            // console.log(typeof(str))
            // console.log(typeof(num+str))
            // console.log(typeof(num-str))
            // console.log(typeof(num*str))
            // console.log(typeof(num/str))
            // console.log(typeof(num%str))


    </script>


</body>

image

2、数据转换

显示数据类型转换和隐式数据类型转换

image

隐式数据类型转换

注意加减乘除的数据类型转换,只有加法转换成字符串,其他的都转换成数字进行运算。

image

结果为:

image

显示数据转换之Number 注意首字母大写

全局方法 Number() 可以将字符串转换为数字。

字符串包含数字(如 "3.14") 转换为数字 (如 3.14).

空字符串转换为 0。

其他的字符串会转换为 NaN (不是个数字)。

image

运行结果为:

image

parseInt 转换成整数

注意

1、可以将字符串转换为整数

2、可以将小数掉小数点后边的数字,转换为整数

3 可以将数字和字符串合并的字符串转换为整数

4、可以将其他进制的数据转换为10进制的整数

image

结果为

image


parseFloat

parseFloat() 函数可解析一个字符串,并返回一个浮点数。

该函数指定字符串中的首个字符是否是数字。如果是,则对字符串进行解析,直到到达数字的末端为止,然后以数字返回该数字,而不是作为字符串。

注释:开头和结尾的空格是允许的。

提示:如果字符串的第一个字符不能被转换为数字,那么 parseFloat() 会返回 NaN。


image

运行结果为:

image


String

转换为字符串

Boolean

转换为布尔值

toString

转换为字符串函数,区别是(1)用法不同,(2)undefined不能用,(3)可以进行数字进制转换,如demo=10,demo.toSting(8) 转换为8进制12

3 隐式类型转换


image

隐式类型转换内部调用的都是现实类型转换的方法。



isNaN()

isNaN() 函数用于检查其参数是否是非数字值。

如果参数值为 NaN 或字符串、对象、undefined等非数字值则返回 true, 否则返回 false。


<!DOCTYPE html>
<html lange = "en">
<head>
    <meta charset="UTF-8">
    <title>js之隐式类型转换  </title>
</head>
<body>
    <h1>js之隐式类型转换  </h1>
    isNaN() 函数用于检查其参数是否是非数字值。
    <br>
    如果参数值为 NaN 或字符串、对象、undefined等非数字值则返回 true, 否则返回 false

    <script type="text/javascript">
        console.log("查看NaN是否是NaN:" + isNaN(NaN)); //查看NaN是否是NaN
        console.log("查看字符NaN是否是NaN:" + isNaN('NaN')); //查看字符NaN是否是NaN
        console.log("查看123是否是NaN:" + isNaN(123)); //查看123是否是NaN
        console.log("查看字符123是否是NaN:" + isNaN("123"));//查看字符123是否是NaN
        console.log("查看字符abc是否是NaN:" + isNaN("abc"));//查看字符abc是否是NaN
        console.log("查看null是否是NaN:" + isNaN(null));
        console.log("查看undefined是否是NaN:" + isNaN(undefined));

    </script>


</body>


image


注意,+和其他的隐式转换不同,其他四则运算都是转换为数字,只有+转换为字符,其他的是有数字的运算先转换为数字


<!DOCTYPE html>
<html lange = "en">
<head>
    <meta charset="UTF-8">
    <title>js之隐式转换  </title>
</head>
<body>
    <h1>js之隐式转换   </h1>
    <script type="text/javascript">
        var a = '123' ;
        a ++ ;

        var b = 'abc' ;
        b ++ ;
        var c = 321 ;
        c = "123" + c  ;//结果为“123321”    

        var d = 1 == true 
        console.log(d + " : " + typeof(d))    
        var e = 1 == "1"
        console.log(e + " : " + typeof(e))    
    </script>


</body>


结果为

image

posted on 2020-10-23 23:00  jilingxf  阅读(182)  评论(0)    收藏  举报

导航