1-1、 算术运算

  1. +,-,*,/,%,()
  2. # 先将值转换为number(Number),再进行计算。

Tips: +特殊,如何有一边为字符串,那么+起拼接符作用,结果一定是字符串。

  1. # 1. true->1,false->0 null->0 "123" -->123
  1. console.log(true+10) //11;
  2. console.log("123"-1) //122;

总结

  1. a、任何数字和NaN运算,得到都是NaN
  2. b、其他的字符作除加运算以为的运算,先将值转换为number(Number),再进行计算。

1-2、 比较运算(关系)

  1. >,<,>=,<=,==,!=,===,!==

将值转换为number,再进行比较,返回的是boolean ==,等于,判断两边关系的时候,它会尽可能去判断两边相等。 ===,全等于,判断的时候,会尽可能判断两边不等。除了判断值相等以外,还要判断数据类型是不是相同。

1-3、 逻辑运算

  1. && 两边都为true,结果就为true
  2. || 只要有一边为true,结果就为true
  3. ! 取反

.两边都先转换为boolean,再判断

  1. // && 逻辑与 两个为true,结果才为true
  2. // || 或 只要有一个为true,结果就为true
  3. // ! 非
  4. console.log(3>2 && 4>3) // true && true 结果为true
  5. console.log(3>2 && 4<3) // true && false 结果为false
  6. console.log(11>5 || 3<4) // true || false 结果为true
  7. console.log(!(3>4)) //!false 结果为true
  1. var a = false;
  2. console.log(!a); //
  1. console.log(!!0) //false
  2. console.log(!0) //true

逻辑运算符常用于布尔值之间;当操作数都是布尔值时,返回值也是布尔值。
特殊情况:
其他非布尔值也可以参与逻辑运算,参与的时候,会自动转换成布尔值进行运算。返回结果不一定就是布尔值。
例如

  1. console.log(3 && 4) //4

1-3-1、 或运算的注意点

  • **|| 有一边为true,结果就为 true,遇到true就会返回**

    1. var b = 0 || "abc"
    2. var c = "abc" || 1;
    3. var d = 0 || NaN
    4. console.log(b) // abc
    5. console.log(c) // abc
    6. console.log(d) // NaN

    1-3-2、 与运算的注意点

  • **两边都为true,结果才为true 遇到false的情况,直接返回**

    1. console.log("abc" && 10) // 10
    2. console.log(0 && "abc") // 0

    1-4、 赋值运算

    1. +=,-=,*=,/=,%=
    1. var a = 2;
    2. //a=a+4;
    3. a+=4;
    4. var b = 4;
    5. b-=4; // b=b-4;
    6. console.log(a) // 6
    7. console.log(b) // 0

    1-5、 三元表达式

    1. var a=(10>4)?10:4

    1-6,++ —运算

    1. ++在前时先自增再运算
    2. ++在后时,小运算,然后再自增
    3. 不管++在前在后都会自增

    —运算时

    1. --在前时先自增再运算
    2. --在后时,小运算,然后再自增
    3. 不管++在前在后都会自增