与、或运算符与短路原则

1.&&与运算符:
与运算符字面理解为两者都,其实际上是找假值。
demo1
``
var a=2;
var b=3;
m=a && b;
console.log(m); //3
``
记住一句话:&&运算,如果结果是true,则取最后一个值,如果结果是false,则取第一个值。
原理:&&找假值,当找到第一个假值时,会获取该值,后面的不再执行,也就是后面的值被短路。
如果都是真值时,取最后一个值。比如
demo2
``
var f = 2 && 3 && 0 && "5";
alert(f); //0

var f = 2 && 3 && 6 && "5";
alert(f); //5
``

2.||或运算:找真值
demo2
``
var a=2;
var b=3;
n=a || b;
console.log(n); //2
``
||或运算,如果结果是true,取第一个值,结果为false,取最后一个值。
原理:||运算符找真值,当找到第一个真值时,会获取该值,后面的不会获取。也就是后面的值被短路。
如果都是假值时,获取最后一个值。
demo2
``
var t=null || 3 || 0 || "2"
alert(t) //3

var t=0 || null || undefined || false
alert(t) //false

``

##短路原则,在逻辑运算符中,前面的值被返回后,后面的值则不再执行,这就是后面的值被前面的值短路。


知名电商网站js代码:
``
requirejs(['main','index'], function (main,index) {
if(index&&index.init){
index.init();
}
``
main是JS文件,index是main.js里返回的参数,由于&&是找假值,这里就是判断,当index不存在时,就让index初始化,当index没有初始化时,也让index初始化。

转载于:https://www.cnblogs.com/sharkJan/p/7446496.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值