前端Javascript(二)---JS数据类型和运算符

一、JS中的数据类型

1数值型:

number整数和浮点数统称为数值。例如85或3.1415926等。

2字符串型:

String由0个,1个或多个字符组成的序列。在JavaScript中,用双引号或单引号括起来表示,如"您好"、'学习JavaScript' 等。

3逻辑(布尔)型:

boolean用true或false来表示。

4空(null)值:

表示没有值,用于定义空的或不存在的引用。要注意,空值不等同于空字符串""或0。

5未定义(undefined)值:

它也是一个保留字。表示变量虽然已经声明,但却没有赋值。

6除了以上五种基本的数据类型之外,JavaScript还支持复合数据类型Object,复合数据类型包括对象和数组两种。 

<!DOCTYPE html>
<html>
        <head>
                <meta charset="UTF-8">
                <title></title>
                <script>
                        /*
                         * 1 JS是弱类型的脚本语言,所有的变量 对象 的数据类型的声明统统是var 
                         * 2  变量声明时没有确定具体的数据类型,在变量赋值时确定变量具体的数据类型
                         * 3 JS中数据类型有哪些 ?  number  string
                         * 4 JS中的变量可以反复声明,后声明的会覆盖之前声明的同名变量
                         * 5 JS中的得代码可以不用以;作为结尾  每一行代码都是一个独立的语句(建议写)
                         * 6 JS中字符串一般不区分 ""  ''  只要不混用即可
                         * 6 可以用不同的类型的数据给变量赋值,变量会自动改变自身的数据类型
                         * 7 当给一个变量赋值为null时,变量的类型为 object 
                         * 8 变量只声明不赋值的情况下,数据和数据类型都显示 undefined
                         * 9 对象 数组其他类型可以叫做复合数据类型 object
                         * 10 JS中的标识符命名规则和JAVA中的保持一致即可 尽量避免 使用$ 会和jQuery冲突
                         * */
                        
                        /*var i=10;
                        alert(i);*/
                        
                        /*var i;
                        i=10;*/
                        
                        /*var i =10;
                        i=20;
                        
                        var i=30;
                        alert(i);*/
                        
                        /*var i= 10;
                        alert(typeof i);*/
                        
                        /*var  i =3.14;
                        alert(i)*/
                        
                        
                        /*var j="你好";
                        var z ='hello js';
                        alert(j)
                        alert(z)
                        alert(typeof j)*/
                        
                        
                        /*var i=10;
                        alert(i);
                        alert(typeof i);
                        i="你好";
                        alert(i);
                        alert(typeof i);*/
                        
                        
                        /*var b=2>1;
                        alert(b);
                        alert(typeof b)*/
                        
                        
                        /*var i= null; 
                        alert(i);
                        alert(typeof i);*/
                        
                        
                        /*var i;
                        alert(i)
                        alert(typeof i);*/
                        
                        
                        /*var i=[1,2,3];
                        alert(i)
                        alert(typeof i)*/
                        
                        /*var i=new Date();
                        alert(typeof i)*/
                </script>
        </head>
        <body>
        </body>
</html>

二、JS中的运算符

Js中的运算符大部分和java中的运算符一样,简单分析一下特殊的运算符号:

 

关于/%

JS中,数字类型都是number,除法的结果中如果没有小数位,直接就是一个整数,如有小数位,才是浮点数

JS中如果出现除零,那么结果是 infinity,而不是报错

JS取余数运算对于浮点数仍然有效,如果和0取余数,结果是NaN(not a number)

<script>
                        /* 
                         * 能除尽,则默认结果就是一个整数,不能除尽,结果默认就是浮点数
                         * 除零不会出现异常,而是出现 Infinity
                         * 和0取余数,出现NaN   not a number 不是一个数字
                         * */
                        alert(10/3);
                        alert(10/0);
                        alert(10%3);
                        alert(10%0);
                        
                </script>

 关于+
+ 同时也是连接运算符,看两端的变量类型,如果都是number那么就是算数中的加法 如果有字符串,那么就是连接符号,如果是布尔类型和number相加,那么会将true转化为1 将false 转化为0

 <script>
                        /*
                         * +号中 如果一段是字符串,就变成了文字拼接
                         * 数字和 boolean类型相加  true会转变成1  false会转变成0  再做数学运算
                         * */
                        var i=1;
                        alert(i+1);
                        alert(1+"1");
                        alert(1+true);
                </script>

关于== 等值符

先比较类型,如果类型一致,再比较内容,如果类型不一致,会强制转换为number再比较内容

<script>
                        /*
                         * == 等值符
                         * 先比较类型,如果类型一致,则比较值是否相同
                         * 如果类型不一致,会将数据尝试转换number 再比较内容
                         * */
                        var a =1;
                        var b="1";
                        var c=true;
                        var d="true";
                        alert(a==b)// t
                        alert(a==c)// t
                        alert(a==d)// f
                        alert(b==c)// t
                        alert(b==d)// f
                        alert(c==d)// f
                </script>

关于=== 等同符

数据类型不同 直接返回false如果类型相同 才会比较内容

<script>
                        /*
                         * === 等同符
                         * 如果数据类型不同,直接返回false  如果类型相同,才会继续比较内容
                         * 
                         * */
                        var a =1;
                        var b="1";
                        var c=true;
                        var d="true";
                        alert(a===b)//f
                        alert(a===c)//f
                        alert(a===d)//f
                        alert(b===c)//f
                        alert(b===d)//f
                        alert(c===d)//f
                        alert("asdf"==="asdf")//t
                </script>

三、JS中的控制流程

基本和JAVA中的一致
 

<!DOCTYPE html>
<html>
        <head>
                <meta charset="UTF-8">
                <title></title>
                <script>
                        /*
                         * 定义变量表示月份
                         * 根据月份输出该月的季节和应季活动
                         * */
                        var i=10;
                        if(i ==12 || i ==1 || i==2){
                                alert("大约在冬季: 冬天吃火锅");
                        }else if(i >= 3 && i<=5 ){
                                alert("春天来了: 春天吃青菜");
                        }else if(i >= 6 && i <= 8){
                                alert("夏天到了: 吃烧烤喝啤酒");
                        }else if(i >= 9 && i <=11){
                                alert("秋天到了: 贴秋膘");
                        }else{
                                alert("月份有误")
                        }
                        
                        
                        switch(i){
                                case 3:
                                case 4:
                                case 5:
                                        alert("春眠不觉晓");
                                        break;
                                case 6:
                                case 7:
                                case 8:
                                        alert("夏天蚊子咬");
                                        break;
                                case 9:
                                case 10:
                                case 11:
                                        alert("秋天一身包");
                                        break;
                                case 1:
                                case 2:
                                case 12:
                                        alert("冬天蚊子死翘翘");
                                        break;
                                default:
                                        alert("月份有误")
                        }
                        
                </script>
        </head>
        <body>
        </body>
</html>

循环结构 while  do_while for  
 

<!DOCTYPE html>
<html>
        <head>
                <meta charset="UTF-8">
                <title></title>
                <script>
                        var i=1;
                        while(i<=10){
                                alert(i)
                                i++;
                        }
                        /*
                         * 考试,直到分数过线为止
                         * 求1-10整数和 1+10*(10/2) */
                        var sum=0;
                        var j=1;
                        do{
                                sum+=j;
                                j++;
                        }while(j<=10);
                        alert(sum)
                        
                        var sum2=0;
                        for(var z=1;z<=10;z++){
                                sum2+=z;
                        }
                        alert(sum2)
                        
                        
                        
                </script>
        </head>
        <body>
                
        </body>
</html>

for 循环

<!DOCTYPE html>
<html>
        <head>
                <meta charset="UTF-8">
                <title></title>
                <script>
                        /*
                         *
                         ** 
                         ***
                         ****
                         * */
                        for(var i =1;i<=9;i++){
                                for(var j=1;j<=i;j++){
                                        document.write(j+"*"+i+"="+i*j+"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;")
                                }
                                document.write("<br/>")
                        }
                </script>
        </head>
        <body>
        </body>
</html>

四、JS中的函数的使用

什么是JS的函数:

类似于java中的方法,JS中也可以定义一些函数,java中的方法签名包含访问修饰符,返回值类型,方法名,参数列表,异常列表,但是JS中定义函数的语法相对简单很多,主要以function作为函数关键字,具备函数名和参数列表,但是没有访问修饰符也没有返回值类型关键字和异常列表


函数定义的三种语法

<!DOCTYPE html>
<html>
        <head>
                <meta charset="UTF-8">
                <title></title>
                <script>
                        /*
                         * 第一种语法格式 常见
                         * function 函数名(参数列表){js代码}
                         * 
                         * 
                         * 第二种语法
                         * var 函数名=function(参数列表){JS代码}
                         * 
                         * 第三种语法 不常用 了解
                         * var 函数名=new Function('js代码')
                         * 
                         * */
                        function fun1(){
                                alert("你好");
                        }
                        
                        var fun2=function(){
                                alert("你很好")
                        }
                        
                        var fun3=new Function('alert("你非常好");');
                        
                        // 调用方法
                        fun1();
                        fun2();
                        fun3();
                </script>
        </head>
        <body>
        </body>
</html>

函数参数和返回值

<!DOCTYPE html>
<html>
        <head>
                <meta charset="UTF-8">
                <title></title>
                <script>
                        /*
                         *
                         * 1传入的实参可以和形参个数不一致 
                         * 2如果函数中有返回值,那么直接用return关键字返回即可
                         * */
                        function fun1(a,b,c){
                                alert("a:"+a);
                                alert("b:"+b);
                                alert("c:"+c);
                        }
                        
                        //fun1(10,"hello js",false);
                        // 少传参数 OK
                        //fun1(1,2);
                        // 多传参数 OK 多出来的参数相当于没传
                        //fun1(10,"hello js",false,new Date());
                        
                        
                        function fun2(a,b){
                                var c=a*b;
                                return c;
                        }
                        
                        //var x =fun2(10,20);
                        //alert(x)
                        
                        // 方法本身作为参数(了解)
                        
                        function funa( i ,j){
                                return i+j;
                        }
                        
                        function funb(a){
                                return a(10,20);
                        }
                
                        var sum =funb(funa)
                        alert(sum)
                        
                        
                </script>
        </head>
        <body>
        </body>
</html>

总结:

        主要介绍了JavaScript的基本语法和常见用法,包括数据类型、运算符、控制流程和函数的使用。JavaScript是弱类型语言,运算符的行为和其他语言有所不同,理解这些基础知识有助于编写更高效的JavaScript代码。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值