【问题标题】:why there is AND operation in the last line code of my example code (Jquery) [duplicate]为什么在我的示例代码(Jquery)的最后一行代码中有 AND 操作 [重复]
【发布时间】:2020-01-06 17:39:46
【问题描述】:

我正在检查示例代码。我对 Jquery 不是很熟悉。我从未在 JavaScript 中看到过这种代码。他正在使用 Jquery 就绪功能。但是里面最后一行代码看不懂

timelineComponents['eventsContent'].on('swiperight', function(){
  var mq = checkMQ();
  ( mq == 'mobile' ) && showNewContent(timelineComponents, timelineTotWidth, 'prev');});

为什么最后还有和操作。是不是像 If 条件?是不是说当mq是移动的时候,再运行函数showNewContent?

这里是资源代码:https://codepen.io/ritz078/pen/LGRWjE

【问题讨论】:

  • 是的,它就像if,除了阅读起来更加混乱。 (如果您对代码有任何控制权,请务必将其更改为实际的 if 以使其更具可读性)
  • 这样使用&&类似于守卫运算符:seanmonstar.com/post/707078771/guard-and-default-operators
  • 对。如果 A 可以强制为 false,则 A && B 返回值 A;否则,它返回 B。因此,如果 (mq == 'mobile') 为真,则只会调用 showNewContent。

标签: javascript jquery


【解决方案1】:

该语句检查mq是否等于字符串值'mobile',如果该语句为真,它将执行函数showNewContent(..)

字面意思是一样的

if(mq == 'mobile') {
    showNewContent(timelineComponents, timelineTotWidth, 'prev');
}

【讨论】:

    猜你喜欢
    • 2011-03-13
    • 2017-05-15
    • 1970-01-01
    • 2013-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多