day02 JS数据类型

js语言的每一个值,都属于某一个数据类型,而数据类型决定了数据储存的空间大小与位置以及处理方式。

数据类型:

  基本数据类型:Number、Boolean、String 、Null和ndefind。

  对象数据类型:object;

  检查数据类型:typeof和instanceof

一、Number数据类型

  用来存储整数和小数。

        var num = 1;
        
        console.log(typeof(num));
        
        num=12.1;
        console.log(typeof(num));

  控制台显示结果都为:Number。

  最大值:Number.MAX_VALUE(Number最大值)

  最小值:Number.MIN_VALUE(Number最小值)

console.log('Number最小值'+Number.MIN_VALUE);//Number最小值:5e-324
        console.log('Number最大值'+Number.MAX_VALUE);//Number最大值:1.7976931348623157e+308

   表示方法
         *             十进制
         *             十六进制    0X11
         *             八进制    0o11
         *             二进制    0b11

  NaN表示not a number。其数据类型是Number

                num = NaN;
        console.log(typeof(num));            

控制台显示结果为:Number。

二、Boolean布尔类型

  Boolean数据类型和java一样只有true和false两个值。

  用于接受表达式(关系和逻辑运算)

  

<!DOCTYPE html>
<html>
    <head>
        <meta charset="{CHARSET}">
        <title>Boolean布尔类型</title>
    </head>
    <body>
        <script type="text/javascript">
            /**
             * true和false
             * 接收表达式(关系或逻辑运算)
             */
            var tag = true;
            console.log(typeof(tag));//结果为:Boolean
            
            tag = false;
            console.log(typeof(tag));//结果为:Boolean
            
            tag =3<5;
            console.log(tag+":"+typeof(tag))//结果为:true:boolean
        </script>
    </body>
</html>

三、String数据类型

  存储连续的字符  , 相当与存储在“”和‘’中的连续字符, " "和' '没有什么区别。(建议使用'',后期使用Html中有标签使用" ",为避免混淆使用' '较好)。

  大部分语法和java相同,不过js中String型可以用" "和' '表示,java的String只能用" "表示;

  

var name= '张三';
            
            var adress ="中国";
            
            console.log("姓名"+name);
            console.log("地区"+adress);
            
            console.log(typeof(name));//结果为:String
            console.log(typeof(adress));//结果为:String
            

  * 如果需要输出一些特殊的字符。
             * 转义字符:  \
             * \t:制表符
             * \n:回车
             * \+字符:代表一些特殊含义的字符。

    var name= '张三\'';
        console.log('姓名'+name);//结果:姓名张三'

 四、Null和Undefind

  Undefined(默认值):声明变量,没有明确给值。返回类型:Undefined

  NULL(空类型):声明变量,明确null值;返回类型:object
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Null和ndefind</title>
    </head>
    <body>
        <script type="text/javascript">
            /*
             * Undefined(默认值):声明变量,没有明确给值。
             * 只有一个值(Undefined),返回类型:Undefined
             * 
             */
            var num;
            console.log(num+":"+typeof(num));
            /**
             * NULL(空类型):声明变量,明确null值;
             * 返回类型:object
             */
            var num =null;
            console.log(num+":"+typeof(num));
            
            /**
             * ==比较值
             * ===比较返回类型
             */
            var a;
            var b=null;
            console.log(a==b);
            console.log(a===b);
            /**
             * Undefined和NULL不同
             * null和undefined有最大的相似性。看看null == undefined的结果(true)
             * 也就更加能说明这点。但是null ===undefined的结果(false)。
             * 不过相似归相似,还是有区别的,就是和数字运算时,10 + null结果为:10;
             * 10 + undefined结果为:NaN。
             */
        </script>
    </body>
</html>

  Undefined和NULL不同

    * null和undefined有最大的相似性。看看null == undefined的结果(true)

    * 也就更加能说明这点。但是null ===undefined的结果(false)。

    * 不过相似归相似,还是有区别的,就是和数字运算时,10 + null结果为:10;

    * 10 + undefined结果为:NaN。

 五、对象数据类型:object

  对象数据类型:是一种key与value组成复杂数据类型,属性和方法。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>对象类型</title>
    </head>
    <body>
        <script type="text/javascript">
            /**
             * 对象数据类型:是一种key与value组成复杂数据类型,属性和方法。
             */
            
            var person = new Object();
            console.log(typeof(person));//结果:object
            
            var date = new Date();
            console.log(typeof(date));//结果:object
             
            var arr = new Array();
            console.log(typeof(arr));//结果:object
        </script>
    </body>
</html>

六、检查数据类型:typeof和instanceof

 typeof:检查数据是否为基本类型或对象类型,返回值:字符串

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>数据检查类型:typeof</title>
    </head>
    <body>
        <script type="text/javascript">
            /**
             * 检查数据类型
             * typeof:检查数据是否为基本类型或对象类型
             * 返回值:字符串
             * 
             */
            var local = 10;
            console.log(typeof(local));
            
            var local = '10';
            console.log(typeof(local));
            
            var local = true;
            console.log(typeof(local));
            
            var local = null;
            console.log(typeof(local));
            
            var local = new Object();
            console.log(typeof(local));
            
            var local = new Object();
            console.log(typeof(typeof(local)));
        </script>
    </body>
</html>

 但是typeof不能判断对象或变量是那一种类型,我们就需要用到instanceof。

 instanceof可以检查是否某种特定对象类型。 返回值:true和false。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>检查数据类型instanceof</title>
    </head>
    <body>
        <script type="text/javascript">
            /**
             * typeof不能判断对象或变量是那一种类型
             */
            var arr = new Array();
            console.log(typeof(arr));
            
            var date = new Date();
            console.log(typeof(date));
            //以上两种返回类型都是object,typeof不能判断对象或变量是哪一种类型
            
            /**
             * instanceof检查是否某种特定对象类型。
             * 返回值:true和false。
             */
            
            var arr = new Array();
            console.log(arr instanceof Array);
            
            var date = new Date();
            console.log(date instanceof Date);
        </script>
    </body>
</html>

猜你喜欢

转载自www.cnblogs.com/wangzhanxin98/p/9303323.html