الفرق بين المراجعتين ل"Liquid/truthy-and-falsy"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'== Truthy و Falsy == تقرّر لغة Liquid عند استخدام نوع بيانات غير منطقي في سياق منطقي (مثل الوسم الشرطي c...')
 
سطر 1: سطر 1:
== Truthy و Falsy ==
+
== نوعا القيم Truthy و Falsy ==
تقرّر لغة Liquid عند استخدام [[نوع بيانات]] غير منطقي في سياق منطقي (مثل الوسم الشرطي conditional tag) ما إذا كان سيُقيَّم على أنه <code>true</code> أم <code>false</code>. تسمَّى أنواع البيانات التي تعيد القيمة <code>true</code> افتراضيًا بالاسم '''truthy،''' وتسمَّى أنواع البيانات التي تعيد القيمة <code>false</code>  افتراضيًا بالاسم '''falsy'''.
+
تقرّر لغةُ Liquid عند استخدام [[Liquid/types|نوع بيانات]] غير منطقي ضمن سياق منطقي (كالوسم الشرطي conditional tag) تقييمَ هذه البيانات على أنها <code>true</code> أو <code>false</code>. تسمَّى أنواع البيانات التي تعيد القيمة <code>true</code> افتراضيًا بالاسم '''truthy،''' وتسمَّى أنواع البيانات التي تعيد القيمة <code>false</code>  افتراضيًا بالاسم '''falsy'''.
  
 
=== Truthy ===
 
=== Truthy ===
 
جميع القيم في لغة Liquid هي truthy باستثناء القيمتين <code>nil</code> و <code>false</code>.
 
جميع القيم في لغة Liquid هي truthy باستثناء القيمتين <code>nil</code> و <code>false</code>.
  
ليس النص "Tobi" منطقيًا في المثال التالي، ولكنه Truthy في الشرط:<syntaxhighlight lang="liquid">
+
ليس النص "Tobi" منطقيًا في المثال التالي، ولكنه Truthy ضمن الشرط:<syntaxhighlight lang="liquid">
 
{% assign name = "Tobi" %}
 
{% assign name = "Tobi" %}
  
سطر 11: سطر 11:
 
   This text will always appear since "name" is defined.
 
   This text will always appear since "name" is defined.
 
{% endif %}
 
{% endif %}
</syntaxhighlight>[[السلاسل النصية Strings]] هي truthy حتى عندما تكون فارغة. سينشئ المثال التالي وسوم HTML فارغة، إذا كان <code>page.category</code> موجودًا مسبقًا ولكنه فارغ:
+
</syntaxhighlight>السلاسل النصية Strings هي truthy حتى عندما تكون فارغة. سينشئ المثال التالي وسوم HTML فارغة، إذا كانت الفئة <code>page.category</code> موجودةً مسبقًا ولكنها فارغة:
 
{| class="wikitable"
 
{| class="wikitable"
 
|+
 
|+
 
!الدخل
 
!الدخل
 +
!الخرج
 
|-
 
|-
 
|<syntaxhighlight lang="liquid">
 
|<syntaxhighlight lang="liquid">
سطر 20: سطر 21:
 
   <h1>{{ page.category }}</h1>
 
   <h1>{{ page.category }}</h1>
 
{% endif %}
 
{% endif %}
 +
</syntaxhighlight>
 +
|<syntaxhighlight lang="liquid">
 +
  <h1></h1>
 
</syntaxhighlight>
 
</syntaxhighlight>
 
|}
 
|}
{| class="wikitable"
 
|+
 
!الخرج
 
|-
 
|<code><nowiki><h1></h1></nowiki></code>
 
|}
 
 
 
=== Falsy ===
 
=== Falsy ===
القيم الوحيدة التي من النوع Falsy في لغة Liquid هي <code>[[nil]]</code> و <code>[[false]]</code>.
+
القيم الوحيدة التي من النوع Falsy في لغة Liquid هي <code>nil</code> و <code>false</code>.
  
 
=== الخلاصة ===
 
=== الخلاصة ===
يلخّص الجدول التالي قيم truthy وقيم falsy في لغة ليكود:
+
يلخّص الجدول التالي قيم truthy وقيم falsy في لغة Liquid:
 
{| class="wikitable"
 
{| class="wikitable"
 
!القيمة
 
!القيمة

مراجعة 02:37، 4 أغسطس 2021

نوعا القيم 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 في لغة Liquid:

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

مصادر