彻底了解js的与和或

学过JS的朋友们应该都知道这俩个运算符(“||” 和 “&&”)的名字 - - 短路运算符。
今天我们就来看一看它究竟是怎么个短路法!


一:在if判断中的用法:
||的用法:
if (2 > 1 || 2 > 5) {
	console.log('CSDN吴小迪');
}

“||”的用法是如果前面的表达式满足了那么就不会再走到下一个表达式,之间就会进入到if的执行语句中。(PS:{}里面的内容为执行语句内容)
如果说俩个条件都不满足那么就不会走进这个执行语句当中去。


&&的用法:
if (2 > 1 && 2 > 6) {
	console.log('CSDN吴小迪');
}

“&&”的用法是如果前面的表达式满足了,那么再去判断下一个,只有全部的表达式满足条件了才会进入到if的执行语句中。
上面的代码虽然2>1是满足的,但是2>6是不满足的,所以是不会进入到if的执行语句中的。


二:简化三目运算符和if语句:
实战场景模拟:

我们有一个变量是用来接收localStorage里面的数据的,但是如果说localStorage里面没有数据那么我们就给他赋予一个空数组。
用三目运算符我们可以这么来写:

let localStorageMessage = (localStorage.getItem('test'))? localStorage.getItem('test'): [];

如果说用短路运算符我们可以这么写:

let localStorageMessage = localStorage.getItem('test') || [];

这样在前面一个值取回的为空的时候就会默认赋值为[]了。
在这里插入图片描述

关于“||”和“&&”妙用的秘诀大家只要记住它的执行顺序即可:

  1. &&运算符在前一个表达式为true的时候才会继续往下一个走。否就止步于此。
  2. ||运算符在前一个表达式为true的时候就直接止步于此了。只有当前一个表达式为false的时候才会继续往下走。

相信大家对“||”和“&&”已经有了一个全新的认知了,那么我们一起来做几个小题目来测试一下,看看究竟有没有完全理解,先不要着急到最下面看答案哦~

  • 1 && 0          答案是???
  • 0 && 1          答案是???
  • 1 && 2          答案是???
  • 0 && false         答案是???
  • 1 || 0         答案是???
  • 0 || 1         答案是???
  • 1 || 2         答案是???
  • 0 || false         答案是???
    请分别在你的本本上写出上面的答案哦~~下方有正确答案,写完了可以看看你有没有全答对呢?

















答案分别为:

  • 0
  • 0
  • 2
  • 0
  • 1
  • 1
  • 1
  • false

你如果还是记不住它的执行流程是如何的那也可以这样记:
关于&&
从前至后的顺序去遍历表达式,遇到false的表达式停止并返回此表达式。如果全都为true,那么就返回最后一个。
关于||
从前至后的顺序去遍历表达式,遇到true的表达式停止并返回此表达式。如果全都为false,那么就返回最后一个。

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值