我有一个在这个 Stackover 答案中使用的 return 语句,我不太明白。这里是:
return maxWidth > $this.width() || maxHeight > $this.height();
以某种方式返回某物是什么意思?
一旦我知道它是什么,我会在回答后编辑这个问题的标题:)
我有一个在这个 Stackover 答案中使用的 return 语句,我不太明白。这里是:
return maxWidth > $this.width() || maxHeight > $this.height();
以某种方式返回某物是什么意思?
一旦我知道它是什么,我会在回答后编辑这个问题的标题:)
它相当于:
if (maxWidth > $this.width() || maxHeight > $this.height()) {
return true;
} else {
return false;
}
换句话说,如果其中一个maxWidth
大于width()
of$this
或者 maxHeight
大于height()
of $this
,它就会返回true
;否则,它将返回false
.
它返回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
在该特定示例中,代码正在检查最大的子维度是否超过父维度,维度是宽度和高度。
它被称为短路评估,在这种情况下将返回一个布尔值。如果
maxWidth > $this.width()
是真的,它会返回true
,而不评估第二个测试。否则它将返回评估结果
maxHeight > $this.height().
如果 的维度之一$this
(创建为 的 jQuery 包装器对象$(this)
)小于某些变量,则返回 true。
在您链接的代码中,这也可以检测溢出作为最大孩子maxWidth
的minWidth
尺寸:如果一个孩子比这个大,那么它就会溢出这个。
看看宽度函数。
它是一个布尔值,所以如果宽度或高度的最大值大于实际宽度,那么你就得到了。