前端学习(二)-----Javascript(03运算符)

目录

一、运算符

1.算数运算符

2.比较运算符

3.逻辑运算符

4.位运算符

5.赋值运算符

6.三目运算符

拓展



一、运算符

        表达式:由数据本身或者由运算符连接的操作数据组成的形式

        运算符分为算数运算符、比较运算符、逻辑运算符、位运算符、赋值运算符、三目运算符

1.算数运算符

        +  -  *  /  %  ++  --

        var a2=5;

        var a3=a2++;     //先把a2的值赋给a3,然后a2再执行自增

        var a4=7;

        var a5=++a4;     //先让a4的值执行自增,然后再执行赋值

console.log(-3/0);    // -Infinity
console.log(NaN==NaN);  //false

2.比较运算符

        >   <   >=   <=   ==(等于)   !=(不等于)   ===(全等于)   !==(不全等于)

        ==   等于,比较两个是否相同

        ===  全等于,先比较类型,再比较,两个都相同结果是true

        3>'10'   数值和字符串比较,字符串转为数值

        '3'>'10'   字符串之间,比较的是首个字符的Unicode码

        3>'10a'  //false

        3<'10a'  //false

        3=='10a'  //false

        NaN==NaN  //false

        NaN和任何值比较(>  <  >=  <=  ==  === )结果都是false

3.逻辑运算符

          ||    逻辑或,关联的两个表达式有一个为true结果是true,否则false

        &&   逻辑与,关联的两个表达式都是true结果是true,否则false

          !     逻辑非,取反

短路逻辑

        &&  如果第一个表达式为false,就不再执行第二个表达式

         ||   如果第一个表达式为true,就不再执行第二个表达式

        短路逻辑不用关注结果是true还是false,重点是看第二个表达式是否执行。

4.位运算符

        模拟计算机底层的运算过程,先把数据转为2进制再进行运算,运算完再把结果转为10进制。

        1    2    3     4      5      6      7      8

        1   10  11  100  101  110  111  1000   

&

按位与,上下两位比较,两者都是1结果1,否则是0

|

按位或,上下两位比较,有一个1结果是1,否则是0

^

按位异或,上下两位比较,不同是1,相同为0

>>

按位右移,删除末尾的位数

<<

 按位左移,在末尾补0

//   5<<1

         1    0   1  |

   1    0    1   0  |

//  9>>1

1   0   0   1  |  

     1   0   0  |  1

5.赋值运算符

        =    +=     -=    *=    /=    %=   ...

6.三目运算符

一目运算符由一个运算符连接的一个数据或者表达式++   --  !
二目运算符由一个运算符连接的两个数据或者表达式
三目运算符有两个运算符连接的三个数据或者表达式

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

        如果条件表达式为true,选择表达式1;如果条件表达式为false,选择执行表达式2

//声明变量保存任意一个年份,判断是否为闰年,使用短路逻辑,如果是闰年打印'闰年'
var year = 2020;
//闰年判断:能被4整除,并且不能被100整除,或者能被400整除
console.log(year%4===0 && year%100!==0 || year%400===0);

(year%4===0 && year%100!==0 || year%400===0)  && console.log('闰年');

拓展

        alert();    弹出警示框

        prompt();  弹出提示(输入)框,需要通过变量保存用户输入的值,类型是字符串型,如果取消结果为null

//取余 
//整除
console.log(5%3);    //2
console.log(3%5);    //3


//闰年,能被4,100或400整除
console.log(2021%4);
奇数 偶数
console.log(2%2);


var a1=2;
//自增
a1++;
++a1;


var a2=5;
//先把a2的值赋给a3,然后a2再执行自增
var a3=a2++;      //a2=6;a3=5

var a4=7;
//先让a4的值执行自增,然后再执行赋值
var a5=++a4;     //8  8

var n1=3;
//把n1的值赋给n2,然后n1执行自减
var n2=n1--;    //3
//先让n1执行自减,然后再赋值给n3
var n3=--n1;        //n1=1; n2=3;  n3=1

console.log('5a'%'3');    //NaN


var a='2';   
//先把a的值转为数值
a++;      //3

//正负号隐式转换为数值
var b=+'2'+3;    //5

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值