نوعا القيم الصحيحة Truthy والخطأ Falsy في Liquid

من موسوعة حسوب

تقرّر لغةُ 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 في لغة Liquid:

القيمة truthy falsy
true
false
nil
string
empty string
0
integer
float
array
empty array
page
EmptyDrop

مصادر