zoukankan      html  css  js  c++  java
  • 002javascript变量&数据类型

    •变量
    –JavaScript 是一种弱类型的脚本语言
    –var c = 3;即变量的声明(变量使用之前必须加var声明,编程规范)
    –变量的命名规则!
    •1.变量命名必须以字母或是下标符号”_”或者”$”为开头。
    •2.变量名长度不能超过255个字符。
    •3.变量名中不允许使用空格。
    •4.不用使用脚本语言中保留的关键字及保留符号作为变量名。
    5.变量名区分大小写。(javascript是区分大小写的语言)
    –全局变量
    •在方法外部声明的变量
    方法内部,没有加var关键字声明的变量
    –局部变量
    •方法内部,使用var声明的变量
    代码:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            
            <title>Untitled Document</title>
            <script type="text/javascript" charset="utf-8">
                var  a = 3; //number类型  全局变量
                
                //变量有两种:全局变量、局部变量
                function test(){
                    var a = 2; //局部变量
                    
                    c = 5;     //全局变量
                    alert(a);
                }
                //alert(c);  方法没执行 c  undefine
                test();    //执行方法
                alert(c);    //执行方法后,c才有值
            
            </script>
            
        </head>
        <body>
        </body>
    </html>

    javascript数据类型:

    •ECMAScript中,数据类型也分为基本类型和引用类型两大类.
    •基本数据类型:Number、Boolean、String、Undefined、Null
    –Number:整数和小数(最高精度17位小数)、NaN、Infinity, -Infinity

      注意:1.除10进制外,还可通过8进制和16进制的字面值来表示,如     070 表示56、0xA表示10.

                 2.小数为浮点类型,if(a+b == 0.3) //不要做这样的测试,因为  浮点数值最高精度是17位,而是0.300000000000000004.

    Undefined:表示变量声明但未赋值.
    –Null:表示一个空的对象引用(也就是赋值为null)
    •引用类型:Object类型 (比如对象、数组、RegExp、Date...)
    •Typeof 操作符
    •基本类型和引用类型的值
    –基本类型是按照值访问的,因为可以操作保存在变量中的实际值

    引用类型则是按引用去访问的

    代码:

        //javascript是弱类型的脚本语言根据赋值决定数据类型
            //1 number类型。整数和小数
            var a1 = 10;
            var a2 = 10.5;
            var a3 = NaN;    //not a  number 不是一个数
            var a4 = 1/0;  //正无穷
            var a5 = -1/0; //负无穷
            
            var a6 = 070; //可以用八进制和十六进制表示
            //alert(a6);
            
            
            
            //不要做小数相加的测试,会损失精度
            var  a7 = 0.1;
            var a8 = 0.2;
            if(a7 + a8 == 0.3){
                alert('等于0.3');
            }else{
                //alert('不等于0.3');
            }
            
            
            
            
            var a9 = parseInt("aaabb");    //不是一个数
            //alert(a9);  //NaN
            
            var a10 = parseInt("120aaa");
            //alert(a10);    //120,以数字开头,自动截取120
            
            var a11 = parseInt("vvv120aaa");
            //alert(a11);        //不是数字开头,NaN
            
            
            
            
            //undefined  数据类型,他的值只有一个:undefined ,表示变量被声明,但未赋值
            var b1 ;
            //alert(b1);    //undefined
            
        
            
            //Null  空值
            var  b2 = null;
            //alert(b2);   //null
            
            
            //String  是基本数据类型.
            var str1 = "我是字符串1";
            var str2 = "我是字符串2";
            //alert(str2);
            
            //Boolean  
            var flag1 = true;
            var flag2 = false;
            
            //引用数据类型
            var arr = [1,2,3];    //数组类型
            var date = new Date();    //日期类型
            var obj = {};  //空对象
            
            // typeof 操作符,用来判断数据类型
            var a = 10;
            var b = 1.5;
            var c = true;
             var d = 'asad';
             var e = new Date();
             var f = NaN;
             var g = [1,2,3,4];
             var h = undefined;  //返回undefined
             var i = null;  //null返回Object,表示一个空对象的引用
            
            alert(typeof h);    //typeof
  • 相关阅读:
    LeetCode刷题之字符串
    LeetCode刷题之数组复习
    为什么要用移码来表示阶码(指数)呢?
    字节左移跟右移
    一个有趣的问题
    为什么对数组名取地址,得到的为整个数组的地址?
    在win10 64位下搭建汇编环境
    windows切换samba账号进行连接
    samba服务配置记录
    subversion钩子函数使用记录
  • 原文地址:https://www.cnblogs.com/lihaoyang/p/4945993.html
Copyright © 2011-2022 走看看