真值与假值
编程时,在条件判断中任何返回 true
的都被叫做 真值(truthy)。任何返回 false
的都被叫做 假值(falsy)。所有的对象(object)类型都可以被描述为真值(truthy)或假值(falsy)。
真值(Truthy)
除了 nil
和 false
之外的所有值都是真值。
如下例,字符串 “Tobi” 虽不是布尔类型,但是其在条件判断时被当做真值(truthy):
{% assign tobi = "Tobi" %}
{% if tobi %}
This condition will always be true.
{% endif %}
字符串(String),即便是空字符串,也是真值(truthy)。如下例,如果 settings.fp_heading
是个空字符串将会输出空 HTML 标签:
输入
{% if settings.fp_heading %}
<h1>{{ settings.fp_heading }}</h1>
{% endif %}
输出
<h1></h1>
假值(Falsy)
总结
下表总结了在 Liquid 中什么是真值什么是假值。
真值(truthy) | 假值(falsy) | |
---|---|---|
true | • | |
false | • | |
nil | • | |
string | • | |
empty string | • | |
0 | • | |
integer | • | |
float | • | |
array | • | |
empty array | • | |
page | • | |
EmptyDrop | • |