JavaScript的第二天

目录

一、运算符类型

        1、算术运算符

         2、前置递增递减运算符:先递增/递减,再返回值

        3、后置递增递减运算符:先返回值,再递增递减

        4、比较运算符:进行判断返回true和false值

        

        5、逻辑运算符:与,或,非

                (1)与:&&(两边的条件都得为true才能返回true)

                (2)或:||(两边条件中,单边条件为true即可返回true)

                        (3)非:!(取返回值的相反值进行输出)

        6、赋值运算符:将常量、变量或表达式的值赋给某一个变量,它将运算符右边的值通过运算赋给左边的变量

二、运算符的优先级

三、if 分支 / 双分支 / 多分支 判断语句

        1、语法结构

        

        2、执行思路

       

         3、一些注意

四、switch分支语句:多分支语句,可以实现精准多选1

        1、语法结构

        2、执行思路

       

        3、注意

五、三元表达式:有三元运算符组成的式子

        1、语法结构:

        2、数字补零案例

由数字,运算符,变量等组成的式子被称为表达式,在程序内进行运算时和一般的数学运算逻辑相反,在程序中运算结果被称为返回值,而运算逻辑为 返回值=表达式

var a=5;
var b=6;
var c=a+b;

console.log(c);
//输出结果为11

一、运算符类型

        1、算术运算符

+
-
*
/
%取余

        在进行算数运算符时,使用浮点数进行运算会导致运算出现问题,且不能直接将浮点数进行比较是否相等。

         2、前置递增递减运算符:先递增/递减,再返回值

                在进行前置递增递减运算时需要和后置进行区分,返回值和变量分为两个部分,先对变量进行递增或递减,后续再返回已经进行运算的变量。

var a=5;    //赋a为5

// ++a :a=a+1 

++a    //对a进行前置递增,此时须知a的返回值为6,该运算后a的值为6
console.log(a)    //此时控制台输出的a为6
console.log(++a)    //a=6时再次前置递增,返回值为7,该次运算后a的值为7




var b=5;    //赋b为5

// --b :b=b-1 

--b    //对b进行前置递减,此时须知b的返回值为4,该运算后b的值为4
console.log(b)    //此时控制台输出的b为4
console.log(--b)    //b=4时再次前置递减,返回值为3,该次运算后b的值为3


//重新定义a=5 b=5
var c = ++a + --a - --b + ++b;

/*

运算c
遵循加减乘除的运算顺序
++a运算后返回值为6,变量a为6
--a此时,a=6,运算后返回值为5,变量a为5
--b运算后返回值为4,变量b为4
++b此时,b=4,运算后返回值为5,变量b为5

即该式 c=6+5-4+5
        c=12

*/

        3、后置递增递减运算符:先返回值,再递增递减

                在进行后置递增递减运算时需要和前置进行区分,返回值和变量分为两个部分,先返回变量本身的值,再对变量进行递增递减。

var a=5;    //赋a为5

// a++ :a=a+1 

a++    //对a进行后置递增,此时须知a的返回值为5,该运算后a的值为6
console.log(a)    //此时控制台输出的a为6
console.log(a++)    //a=6时再次后置递增,返回值为6,该次运算后a的值为7




var b=5;    //赋b为5

// b-- :b=b-1 

b--    //对b进行后置递减,此时须知b的返回值为5,该运算后b的值为4
console.log(b)    //此时控制台输出的b为4
console.log(b--)    //b=4时再次后置递减,返回值为4,该次运算后b的值为3


//重新定义a=5 b=5
var c = a++ + a-- - b-- + b++;

/*

运算c
遵循加减乘除的运算顺序
a++运算后返回值为5,变量a为6
a--此时,a=6,运算后返回值为6,变量a为5
b--运算后返回值为5,变量b为4
b++此时,b=4,运算后返回值为4,变量b为5

即该式 c=5+6-5+4
        c=10

*/

        4、比较运算符:进行判断返回true和false值

>大于
<小于
>=大于等于
<=小于等于
==相等,需满足值相等,相等为true,不相等为false
===全等,需值和数据类型都相等,相等为true,不相等为false
!=

不相等,需满足值相等,当两边值相等时,取返回值的相反值

!==不全等,需值和数据类型都相等,当两边值相等时,取返回值的相反值
        console.log(3 > 6);
        //返回值为false

        console.log(3 <= 6);
        //返回值为true

        console.log(5 > 8);
        //返回值为false

        console.log(5 >= 8);
        //返回值为false

        console.log(5 == "5");
        //返回值为true

        console.log(5 === "5");
        //返回值为false

        console.log(!true);
        //返回值为false

        console.log(5 != "5");
        //返回值为false

        console.log(5 !== "5");
        //返回值为true

        

        5、逻辑运算符:与,或,非

                (1)与:&&(两边的条件都得为true才能返回true
    console.log(5 > 7 && 5 < 7);
     //        false  &&  true 
    //运算符前含有false,输出的返回值为false

    console.log(4 < 7 && 5 < 7); 
    //          true  &&  true
    //运算符前后都含有true,输出的返回值为true

    console.log(5 > 7 && 4 > 7); 
    //        false  &&  false
    //运算符前后都为false,输出的返回值为false

    console.log(5 < 7 && 5 > 7); 
    //        true   &&  false
    //运算符后含有false,输出的返回值为false

                (2)或:||(两边条件中,单边条件为true即可返回true)
    console.log(5 > 7 || 5 < 7);
     //        false  ||  true 
    //运算符后含有true,输出的返回值为true

    console.log(4 < 7 || 5 < 7); 
    //          true  ||  true
    //运算符前后都含有true,输出的返回值为true

    console.log(5 > 7 || 4 > 7); 
    //        false   ||  false
    //运算符前后都为false,输出的返回值为false

    console.log(5 < 7 || 5 > 7); 
    //         true   ||  false
    //运算符前含有true,输出的返回值为true

                        (3)非:!(取返回值的相反值进行输出)
    console.log(!(3 < 8));
    //(3<8)输出的值为true,使用 !运算符取返回值的相反值false
    //该等式输出false 

在逻辑运算符内存在一种短路运算情况:

在条件表达式中,当某个操作的结果已经足以确定整个表达式的值时,后续的操作就不再执行的一种计算策略,这种特性通常出现在逻辑运算符如 "&&“(与)和”||"(或) 中。

在这种情况下当 的第一个条件判断完成,如果为false时后续的判断将不会进行,并直接输出false。

类似的情况在 中也有体现,当有某个条件达成true时,后续条件不再判断而是直接输出true。

在形成短路运算之前的运算都是正常进行,直到触发短路运算,并打断运算的判断。在编程中,短路运算可以提高效率,尤其是在处理大量数据或者复杂的条件判断时,是一种对于代码的优化手段。

        6、赋值运算符:将常量、变量或表达式的值赋给某一个变量,它将运算符右边的值通过运算赋给左边的变量

=赋值
+=加等于
-=减等于
*=乘等于
/=除等于
%=模等于
var a = 3;
var b = 2;

a+=b    //a =5; b = 2

a-=b    //a = 1;b = 2

a*=b    //a = 6;b = 2;

a/=b    //a = 1;b = 2;

a%=b    //a = 1;b = 2;

二、运算符的优先级

        在进行程序运算时应注意运算符的优先级,优先级高的先运算:

三、if 分支 / 双分支 / 多分支 判断语句

        1、语法结构

//if分支语句
    if (条件表达式)
     {
        执行语句
     }


//if双分支语句
    if (条件表达式) 
        {
            执行语句1
        } 
    else 
        {
            执行语句2
        }


//if多分支语句
    if (条件表达式1) 
        {    语句1;    } 

    else if (条件表达式2) 
        {    语句2;    } 

    else if (条件表达式2) 
        {    语句2;    } 

    else(条件表达式2) 
        {    语句2;    } 

        

        2、执行思路

        在进入if判断语句时,判断条件是否符合条件表达式的内容,输出一个boolean值,当值为true时进入该条件下的执行语句,false时跳过该条件的执行进入下一个判断语句。

       

         3、一些注意

                (1)if语句为判断语句,而不是循环语句,所以该语句最终只有一个条件能被满足,且 只能执行一个语句。

                (2)当所有条件不满足时,执行最后一个else中的语句。

                (3)else理论上可以任意多个

四、switch分支语句:多分支语句,可以实现精准多选1

        1、语法结构

    switch (表达式)
    {
        case value1:
            执行语句1;
            break;
        case value2:
            执行语句2;
            break;
        ...
        default:
            执行最后的语句;
    }

        2、执行思路

                利用我们的表达式的值 和 case 后面的选项值相匹配,如果匹配上,就执行该case里面的语句。        

                如果都没有匹配上,那么执行 default里面的语句

       

        3、注意

                (1)break是为了终止执行语句的输出,在case选择中必须添加

                (2)switch主要是具体数值的选择,区别于if语句的范围选择

                (3)因为具体选择的情况,所以switch后只需要填入所要进行选择的变量名即可

                (4)case的判断条件为全等,即值和数据类型必须一致才可以

        

五、三元表达式:有三元运算符组成的式子

        1、语法结构:

                通过判断条件表达式,如果条件表达式结果为真则返回表达式1的值,如果条件表达式结果为假则返回表达式2的值(两个表达式由冒号隔开)

条件表达式 ? 表达式1 : 表达式2

var a=3;
var b=4;
a+b>10 ?   a=5 : a=7

        2、数字补零案例

        

        //  用户输入0~59之间的一个数字
        // 如果数字小于10,则在这个数字前面补0,(加0 拼接) 否则  不做操作
        // 用一个变量接受这个返回值,输出

        // 三元表达式   表达式 ? 表达式1 :表达式2 

        var a = +prompt("请输入一个值")

        a =     a >= 10 ?     a     :     "0" + a
    //该行代码表达为,判断a的大小后去选择输出表达式1或2来作为需要返回的a的值

    //使用if循环也可以进行操作
        // if (a < 10) {
        //     a = "0" + a
        // }
        console.log(a);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值