为了账号安全,请及时绑定邮箱和手机立即绑定

d.onSuccess && (e = d.onSuccess, delete d.onSuccess)是啥意思

d.onSuccess && (e = d.onSuccess, delete d.onSuccess)是啥意思

慕工程0101907 2019-04-19 16:29:57
d.onSuccess&&(e=d.onSuccess,deleted.onSuccess)这条语句目测主要是用来干啥的呀我就能目测到deleted.onSuccess是个布尔型的值e=d.onSuccess是赋值还是咋,&&是啥操作,括号里那是在干啥(⊙o⊙)?
查看完整描述

2 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

这句代码写成下面这样应该能比较容易理解:
if(d.onSuccess){
e=d.onSuccess;
deleted.onSuccess;
}
&&在这里起到一个if语句的作用,简单地说就是,如果&&前面的表达式返回false,后面的部分就不会执行了。换句话说,只有前面的表达式为true时才会执行后半句。楼主可以搜一下短路运算符,这在JS中是常见写法,用来简化条件判断,就像三元运算符?:一样。
后半句的作用是先把d的onSuccess的值赋给e,然后将其从d中删除,这里面的e可能是一个临时变量。
                            
查看完整回答
反对 回复 2019-04-19
?
森栏

TA贡献1810条经验 获得超5个赞

@Terry_139061解答完全正确d.onSuccess&&(e=d.onSuccess,deleted.onSuccess)这种写法是一个利用&&特性的小技巧。当存在onSuccess属性时候会执行后面的语句
                            
查看完整回答
反对 回复 2019-04-19
  • 2 回答
  • 0 关注
  • 513 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号