zoukankan      html  css  js  c++  java
  • js上 五、运算符-1

    5.1.认识运算符

    什么是运算符?

    运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算。

    运算符的应用:

    购物车:计算总价,数量;

    **Js ** 中有哪些运算符?

    算术运算符、赋值运算符、关系运算符、逻辑运算符、三元运算符

    #5.2.如何理解运算符

    ü 运算数的个数:一元、二元、三元

    如果操作数只有一个,称之为一元运算符,或者单目运算符。

    如果操作数有两个,称之为二元运算符,或者双目运算符,这是最多的

    如果操作数有三个,称之为三元运算符,或者三目运算符,在js中,只有一个?:。

    如图:

    img

    #5.3.算术运算符:

    ü 二元运算符:+、-、*、/ :加减乘除 %:取模,取余

    ü 一元运算符:++、--:自增,自减

    #a、+ 两个功能:1.拼接 2.相加

    规律:

    1)如果 + 有一端是字符串,那么一定是字符串的拼接;

    ​ 2)如果两端都没有字符串,那么将两端内容转为数字进行相加;

    img

    #b、- * / % 先对操作数进行隐式转换,转换为number,再进行运算

    img

    #C、一元运算符 ++ --

    ++,表示自增

    --,表示自减

    首先,看一个需求,需要将某一个数加1,然后赋值给其它的地方使用:

    img

    在js编程中,有太多类似的需求,所以js提供了一个++的运算符,专门用来实现+1的操作。如下:

    img

    我们发现:

    对于++而言,它只需要一个操作数,所以它是一元(单目)运算符。

    实际上,++并没有这么简单:

    img

    自增,它的本意是将当前变量的值增加1,

    但是,它又额外的做了一件事情,它将加1之后的结果,又重复赋值给当前变量。

    所以说,++它是有副作用的,副作用就是重新赋值。

    对于++,它又分为两种用法:

    ü 前加,比如++a

    ü 后加,比如a++

    img

    前加和后加的区别:

    ü 共同点:副作用都生效了,当前变量的值已经发生变化

    ü 不同点:

    ++a先返回递增之后的a的值

    a++先返回a的原值,再返回递增之后的值

    可以这么记:前加,类似于先斩后奏,也就是将自增之后的值立马用上。

    而后加有点神经大条,反应迟钝,整个表达式的值还是自增之前的那个值。

    与++类似,--有相同的用法:

    ü 前减:--a

    ü 后减:a--

    img

    在实际开发中,++和--,使用非常普遍。尤其是在循环操作的时候。

    说明:

    ++ -- 都会将值先隐式转为number,再进行自增自减

    #5.4.赋值运算符

    首先,在js中,=表示赋值。

    大家在读代码,尽量读成赋值操作,不要读成等于操作。

    img

    注意:=不是等于,而是赋值,真正的等于是==。

    赋值运算符是一个二元运算符,需要两个操作数参与。

    赋值运算符的优先级,非常低,基本上就是最低的。只比,高。

    img

    注意点:

    ü =的优先级比较低

    ü =和==的区别

    ü +=可以用于数字或字符串,视情况而定

    一个等号表示赋值,

    两个等号才表示相对,

    将赋值运算符=和算术运算符+、-、*、/、%结合到一起,可以形成复合的赋值运算符。如下:

    img

    **特点:**在赋值运算符的左边和右边,出现了同一个变量,然后进行的是+、-、*、/、%的操作,那么就可以使用复合赋值运算符。

    #作业:

    1、给每一题的每一行写注释,每一道题的运行结果写出结果的解析。要求明了简单。

    console.log(3+5) 8

    console.log(3+true) 4

    console.log("3"+true)”3true”

    console.log(3+undefined); NaN

    console.log(""+true);”true”

    console.log(4-3+"admin"); “1admin”

    console.log(5+2+"2") “72”

    2、输出下面表达式的结果

    var result1 = 5 - null+false; //

    var result2 = "NaN" - 1+'abc'; //

    var result3 ="3"+5 - 3; //

    var result4 = 5 - ""+true; //

    var result5 = 5 - "2"+"abc"; //

    var result6 = 5 - null+2; //

    var a = 99;

    var b = 100;

    var c = a%b;

    alert(c); //99

    5+22/2%2结果是?

    var a,b,c,d,e;

    ​ a=3

    ​ b=10

    ​ c=(--a)+(b++)

    ​ d=(--b)-a

    ​ e=b/a+3-2%4

    输出 c ,d,e的结果值

    #小结:

    1. 理解一元,二元,三元运算符

    2. + :两个功能 :相加 、 拼接

    3. - * / %:先转number再运算

    4. += 、-= 、*= 、/=的应用

  • 相关阅读:
    事件的解除与绑定
    JavaScript 继承
    left 和 margin-left
    表格 DOM 操作
    基于继承的拖拽
    碰撞运动
    弹性运动
    完美运动框架
    JS 操作 Cookie
    DIV拖拽
  • 原文地址:https://www.cnblogs.com/yzy521/p/14132606.html
Copyright © 2011-2022 走看看