js的赋值与比较运算符

var a=4;
    var b=5;
    var c=-3;
    console.log(a+=5);  /*值:9     a=a+5=9*/
    console.log(c-=5);  /*值:-8     c=c-5=-8*/
    console.log(b*c);  /*值:-40    c=-8   b*c=-40 */
    console.log(b/c);  /*值:-0.625     c=-8  b=5  b/c=-0.625*/
    console.log(b%c);   /*值:5    b=5  c=-8  注意这里不是-5,能整除就为0,不能整除就取不能整除剩于的数(被除数是正,取模就是正,被除数是负,取模就是负)*/
    console.log(c%b);   /*值:-3     注意 能整除就为0,不能整除就取不能整除剩于的数(被除数是正,取模就是正,被除数是负,取模就是负)*/

>          大于
  <          小于
  >=         大于等于
  <=         小于等于
  ==         相等       比较值是否相等
  !=         不相等       比较值是否不等
  ===        全等       比较值和数据类型是否全等
  !==        不全等     比较值和数据类型是否不全等
返回值都是Boolean布尔类型。
Null  undefined是派生于Null,所以:
undefined == Null;   true  undefined是派生于Null,相同类型,两个都是空值
undefined !== Null;   true  undefined是派生于Null,相同类型,两个都是空值
即: console.log(null==undefined);  /*值:true; *undefined是派生于Null,类型不同,两个都是空值/
    console.log(null!==undefined);  /*值:true; *undefined是派生于Null,类型不同,两个都是空值/
    console.log(null!=undefined);  /*值:false  undefine派生于Null,两个都是空值,所以值相等,类型不同*/
    console.log(null===undefined);  /值:*false  undefine派生于Null,两个都是空值,所以值相等,类型不同*/

    var a="5";
    var b=5;
    var c=a==b;/*true 比较值是否相等*/
    var e=a!=b;  /*false   比较值是否相等,通过隐式类型转换,两者是相等的*/

    var d=a===b; /*false  比较值和数据类型是否相等,通过隐式类型转换,两者是不相等的*/
    var f=a!==b; /*true   比较值和类型是否相等,通过隐式类型转换,两者是不相等的*/
    console.log(e);
    console.log(f);

================

原文地址:https://www.cnblogs.com/huaobin/p/14162530.html