Logic đúng & sai

Trong lập trình, chúng ta mô tả “Truthy” (đúng) và “falsy” (sai) như bất kì kết quả trả về là đúng hoặc sai tương ứng, khi chúng được sử dụng trong một câu lệnh if
Truthy là gì?
Tất cả các giá trị trong Liquid là “truthy” (đúng), ngoại trừ nil và false.
Trong ví dụ dưới đây, chữ “Tobi” không phải là một kiểu boolean, nhưng nó là truthy trong một điều kiện:
{% assign tobi = ‘Tobi’ %}
{% if tobi %}
This will always be true.
{% endif %}
Các chuỗi, kể cả khi rỗng thì vẫn là truthy. Ví dụ dưới đây sẽ cho kết quả tags HTML rỗng nếu settings.fp_heading là rỗng.
Đầu vào
{% if settings.fp_heading %}
<h1>{{ settings.fp_heading }}</h1>
{% endif %}
Đầu ra
<h1></h1>
Để tránh điều này, bạn có thể kiểm tra xem chuỗi có phải là blank(trống) không, như sau:
{% unless settings.fp_heading == blank %}
<h1>{{ settings.fp_heading }}</h1>
{% endunless %}

Một EmptyDrop cũng là truthy. Trong ví dụ dưới đây, nếu settings.page là một chuỗi rỗng hoặc được thiết lập cho một đối tượng đã bị ẩn hoặc bị xóa, bạn sẽ kết thúc bằng một EmptyDrop. Kết quả là một <div> rỗng không mong muốn.
Đầu vào
{% if pages[settings.page] %}
<div>{{ pages[settings.page].content }}</div>
{% endif %}
Đầu ra
<div></div>
Falsy là gì?
Những giá trị duy nhất là falsy trong Liquid là nil và false.
nil là kết quả được trả về khi một đối tượng Liquid không có bất cứ cái gì để trả về. Ví dụ, nếu một bộ sưu tập không có một hình ảnh nào, collection.image sẽ được thiết lập là nil. Từ đó, nó là “falsy”, bạn có thể làm như sau:
{% if collection.image %}
<!– output collection image –>
{% endif %}
Giá trị false đưlserị availableugh mnhiều đặc tính cưlsđưlserị availablenhư product.available.
Tóm Tắt
Bảng dưới đây tóm tắt những gì là truthy hoặc falsy trong Liquid.

Haravan - Công ty công nghệ cung cấp giải pháp kinh doanh thương mại điện tử, duy nhất tại Việt Nam được Google lựa chọn vào chương trình bệ phóng tiềm năng với hỗ trợ và đào tạo công nghệ để vươn ra thị trường quốc tế vững chắc.