JavaScript的基本概念----操作符

一. 一元操作符

只能操作一个值的操作符

1. 递增和递减的操作符

var a = 10;
1)++a;            //11
    --a;            //10;
    如果:
    c = ++a - 1;    //10
    a               //11
    a先进行++的操作,后再-1,所以c=11-1=10,a=11;
2)a++;            //11
   a--;            //10;
    如果:
    c = a++ - 1;    //9
    a               //11
    a先进行-1,所以c=10-1=9;这个操作结束后a进行了+1操作,a=11;

在进行++或--操作时,会对非数值进行转换,例如true转化为1,false转化为0;
var s1 = "2";
s1++;            //先将“2”变为2,再加加,3
var s2 = "p";
s2++;           //“p”转化不成数值,NaN

2. 一元减和加操作

var a = 1;
a = +a        //1
a = -a        //-1;变成了负数
+不会进行加操作,但是可以进行数据类型转换
c= +true     //1

number与字符串相加还是字符串
~             相减  是数字
5 + "o2"   //"5o2"
5 + "1"    //51
5 - "u2"   //NaN
5 - "1"    //4  

二. 关系操作符

小于< 大于> 小于等于<= 大于等于>=
如果两个操作数中有一个是数值,则另一个也要变为数值比较
如果两个操作数都是字符串,则比较字符编码值(例如a为97,b为66)
例如:“23”<”3”//true 2的编码为50,3的编码为51
“23”<3 //false 因为“23”转化为23
NaN不论和谁比较都是错的

三.相等操作符

==和!=会先将两则转化为类似的类型(强制转型),再比较
===仅比较不转换

1.相等和不全等

  在转换不同的数据类型的时候的原则:
  1)如果其中一个操作数是布尔值,比较前true为1,false为0
  2)如果其中一个是字符串,另一个是数字,则将字符串转化为数字
  比较的时候原则:
  1)null与undefined相等
  2)在比较相等性前,不能将null和undefined转化为任何值
  3)NaN与任何的都不相等,包括其本身
  4)判断两个对象时,比较的是他们是不是同一个对象,

2.全等和不全等

  ===为不强制转换的情况下比较,数据类型相同,数值一样才相等
  例如  “55”==55     //true
        "55"===55   //false,数据类型不同

        "55"!=55      //false
        "55"!==55     //true

四.三目运算

var a = (b>c)?b:c;
如果b大于c,则a=b否则a=c;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值