Liquid/truthy-and-falsy
< Liquid
Truthy و Falsy
تقرّر لغة Liquid عند استخدام نوع بيانات غير منطقي في سياق منطقي (مثل الوسم الشرطي conditional tag) ما إذا كان سيُقيَّم على أنه true أم false. تسمَّى أنواع البيانات التي تعيد القيمة true افتراضيًا بالاسم truthy، وتسمَّى أنواع البيانات التي تعيد القيمة false افتراضيًا بالاسم falsy.
Truthy
جميع القيم في لغة Liquid هي truthy باستثناء القيمتين nil و false.
ليس النص "Tobi" منطقيًا في المثال التالي، ولكنه Truthy في الشرط:
{% assign name = "Tobi" %}
{% if name %}
This text will always appear since "name" is defined.
{% endif %}
السلاسل النصية Strings هي truthy حتى عندما تكون فارغة. سينشئ المثال التالي وسوم HTML فارغة، إذا كان page.category موجودًا مسبقًا ولكنه فارغ:
| الدخل |
|---|
{% if page.category %}
<h1>{{ page.category }}</h1>
{% endif %}
|
| الخرج |
|---|
<h1></h1>
|
Falsy
القيم الوحيدة التي من النوع Falsy في لغة Liquid هي nil و false.
الخلاصة
يلخّص الجدول التالي قيم truthy وقيم falsy في لغة ليكود:
| القيمة | truthy | falsy |
|---|---|---|
| true | • | |
| false | • | |
| nil | • | |
| string | • | |
| empty string | • | |
| 0 | • | |
| integer | • | |
| float | • | |
| array | • | |
| empty array | • | |
| page | • | |
| EmptyDrop | • |