有人可以为我解释这个退货声明吗?

时间:2012-09-20 15:37:44

标签: javascript

我有this Stackover answer中使用的return语句,我无法理解。这是:

return maxWidth > $this.width() || maxHeight > $this.height();

以某种方式返回某些内容是什么意思?

我会在得到答案后立即编辑此问题的标题:)

6 个答案:

答案 0 :(得分:7)

相当于:

if (maxWidth > $this.width() || maxHeight > $this.height()) {
  return true;
} else {
  return false;
}

换句话说,如果maxWidth大于width()的{​​{1}} $this大于maxHeight } height(),它将返回$this;否则,它将返回true

答案 1 :(得分:3)

返回boolean

return maxWidth > $this.width() || maxHeight > $this.height();

假设,

maxWidth = 300 
$this.width() = 200
maxHeight = 400
$this.height() = 500

所以它返回

(300>200 || 400>500) ==> (T || F) ==> TRUE

答案 2 :(得分:1)

在该特定示例中,代码检查最大子维度是否超出父维度,维度是宽度和高度。

答案 3 :(得分:1)

它被称为short-circuit evaluation,在这种情况下将返回一个布尔值。如果

maxWidth > $this.width() 

是真的,它将返回true,而不评估第二次测试。否则它将返回评估结果

maxHeight > $this.height(). 

答案 4 :(得分:0)

如果作为$this创建的jQuery包装器对象的$(this)维度之一小于某些变量,则返回true。

在您链接的代码中,可以检测到溢出为maxWidthminWidth是最大孩子的维度:如果一个孩子比这个大,那么它就会溢出。

查看width功能。

答案 5 :(得分:0)

它是一个bool值,所以如果宽度或高度的最大值大于实际宽度,那么你就是真的。