Liquid/truthy-and-falsy

من موسوعة حسوب
مراجعة 00:45، 1 أغسطس 2021 بواسطة Ola-abbas (نقاش | مساهمات) (أنشأ الصفحة ب'== Truthy و Falsy == تقرّر لغة Liquid عند استخدام نوع بيانات غير منطقي في سياق منطقي (مثل الوسم الشرطي c...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

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

مصادر