JS运算符之&&和||

来源:互联网 发布:空间和域名 编辑:程序博客网 时间:2024/06/06 17:23

js中有如下图所示的运算符:
这里写图片描述

在这里我们主要讲一下&& 和||的问题 ;这是面试笔试时候可能会运到的问题,在此之前,先了解一下各个运算符的运算先后顺序,如下:
运算符顺序
1 ()
2 !、-、++、– 负号 正号
3 *、/、%
4 +、-
5 <、<=、<、>=
6 ==、!=、===、!==、
7 &&
8 ||
9?: (三元运算符)
10 =、+=、-=、*=、/=、%= (赋值运算符)

在这里要注意一下&&和||的顺序,&&是排在||前面的,这对于某些面试题来说很关键。

接下来,我们要知道一下几个问题:

  • a&&b

    结果是什么?
    如果a 为假 ,则返回 a
    如果a 为真 ,则返回 b

  • a||b

    结果是什么?
    如果 a 为假 则返回b
    如果 a 为真 则返回a

根据上面两个结论以及结合运算符顺序,我们再看一下下面几道面试题:

    var aa  =   0&&1;    alert(aa); //0    var bb =  1&&0;    alert(bb); //0    var cc =  1&&10;    alert(cc);//10---------- console.log(0||1);  //1 console.log(1||0);  //1 console.log(1||5);  //1 console.log(5||1);  //5----------var a = 1 && 2 && 3;console.log(a); //3var b = 0 && 1 && 2;console.log(b); // 0var c = 1 && 0  && 2;console.log(c);  // 0----------    var a = 0|| 1 || 2;    console.log(a); //1    var b = 1|| 0 || 3;    console.log(b); //1----------var a = 3 && 0 || 2;console.log(a); //2;var b = 3 || 0 && 2;console.log(b); // 3var c = 0 || 2 && 3;console.log(c); //3
原创粉丝点击