真值和假值

当在布尔上下文(例如条件标签)中使用非布尔数据类型时,Liquid 决定将其评估为 true 还是 false。默认返回 true 的数据类型称为真值。默认返回 false 的数据类型称为假值

真值

除了 nilfalse 之外,Liquid 中的所有值都是真值。

在下面的示例中,文本 “Tobi” 不是布尔值,但在条件中是真值

{% assign name = "Tobi" %}

{% if name %}
  This text will always appear since "name" is defined.
{% endif %}

字符串,即使是空的,也是真值。如果 page.category 存在但为空,则以下示例将创建空的 HTML 标签

输入

{% if page.category %}
  <h1>{{ page.category }}</h1>
{% endif %}

输出

  <h1></h1>

假值

在 Liquid 中,唯一为假的值是 nilfalse

总结

下表总结了 Liquid 中哪些是真值,哪些是假值。

  真值 假值
true  
false  
nil  
字符串  
空字符串  
0  
整数  
浮点数  
数组  
空数组  
页面  
EmptyDrop