JS中 逻辑或 || 逻辑与 && 的使用方法总结

参考资料

A||B

  如果A能转换成true则返回A,否则返回B  因此,在boolean环境(在if的条件判断中)中使用时, 二者操作结果中只要有一个为true,返回true;二者操作结果都为false时返回false.

只有 0、null、undefined、空字符串 为假,其余都是真

例如:

o1=true || true      // t || t 结果为 true

o2=false || true      // f || t 结果为 true

o3=true || false      // t || f 结果为 true

o4=false || (3 == 4)  // f || f 结果为 false

o5="Cat" || "Dog"    // t || t 结果为 Cat

o6=false || "Cat"    // f || t 结果为 Cat

o7="Cat" || false    // t || f 结果为 Cat

实际项目中

//1、在if判断中

//if(1==1 || 2==3){}//->两个条件中只要有一个条件为真,整体就为真 "或者"

//if(1==1 && 2==3){}//->两个条件中只有条件都为真,整体就为真 "并且"

//2、用作函数传参时参数的判断   是两个值求其中一个的时候【下面求和就是一个例子】

//1||2 ->1 "逻辑或" 首先看左边的值是真还是假,如果是真,返回的是左边的值,如果是假返回的是右边的值

//1&&2 ->2 "逻辑与" 首先看左边的值是真还是假,如果是真,返回的是右边的值,如果是假返回的是左边的值

3、用作对象的判断

let  params={

pageNo:page||query.pageNo,

pageSize:query.pageSize

};

//如何看真假?

//只有 0、null、undefined、空字符串 为假,其余都是真

//我们在真实项目中应用逻辑或进行数据的初始化

//需求:求两个数的和,如果第二个数没有传递的话,我们默认加零

function sum(num1, num2) {

//        if (typeof num2 === "undefined") {//->说明num2没有传递值,默认值是undefined,此时我们让它的值变为0

//            num2 = 0;

//        }

num2 = num2 || 0;//->undefined||0 ->num2=0 等价于上面的判断

console.log(num1 + num2);

}

//sum(100);//->num1=100 num2=undefined

//3、当||和&&同时出现的时候,&&的优先级大于||

console.log(0 || 1 && 2 || 3);

//1 && 2 ->2

//0 || 2 ->2

//2 || 3 ->2

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,267评论 0 4
  • 第一章: JS简介 从当初简单的语言,变成了现在能够处理复杂计算和交互,拥有闭包、匿名函数, 甚至元编程等...
    LaBaby_阅读 1,689评论 0 6
  • js简介 Js是一种基于事件和对象驱动的解释性、松散性的语言。 一切皆对象 javascript 布兰登艾奇 ...
    塔库纳玛哈哈阅读 1,233评论 0 2
  • JS基础讲解 JavaScript组成ECMAScript:解释器、翻译DOM:Document Object M...
    FConfidence阅读 580评论 0 1
  • 1.什么叫做设计模式(基本概念) 在面向对象软件设计过程中,针对问题进行简洁而优雅的一种解决方案 设计模式是在某种...
    Jianshu9527阅读 347评论 0 3