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>运行结果如下:
注意如下几个数据类型的输出
<!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>2、数据转换
显示数据类型转换和隐式数据类型转换
隐式数据类型转换
注意加减乘除的数据类型转换,只有加法转换成字符串,其他的都转换成数字进行运算。
结果为:
显示数据转换之Number 注意首字母大写
全局方法 Number() 可以将字符串转换为数字。
字符串包含数字(如 "3.14") 转换为数字 (如 3.14).
空字符串转换为 0。
其他的字符串会转换为 NaN (不是个数字)。
运行结果为:
parseInt 转换成整数
注意
1、可以将字符串转换为整数
2、可以将小数掉小数点后边的数字,转换为整数
3 可以将数字和字符串合并的字符串转换为整数
4、可以将其他进制的数据转换为10进制的整数
结果为
parseFloat
parseFloat() 函数可解析一个字符串,并返回一个浮点数。
该函数指定字符串中的首个字符是否是数字。如果是,则对字符串进行解析,直到到达数字的末端为止,然后以数字返回该数字,而不是作为字符串。
注释:开头和结尾的空格是允许的。
提示:如果字符串的第一个字符不能被转换为数字,那么 parseFloat() 会返回 NaN。
运行结果为:
String
转换为字符串
Boolean
转换为布尔值
toString
转换为字符串函数,区别是(1)用法不同,(2)undefined不能用,(3)可以进行数字进制转换,如demo=10,demo.toSting(8) 转换为8进制12
3 隐式类型转换
隐式类型转换内部调用的都是现实类型转换的方法。
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>注意,+和其他的隐式转换不同,其他四则运算都是转换为数字,只有+转换为字符,其他的是有数字的运算先转换为数字
<!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>结果为
                    
                













                
            
        
浙公网安备 33010602011771号