Menu
CoddyTech

Nilai Truthy dan Falsy

Termasuk bagian Dasar-Dasar dalam perjalanan Lua di Coddy. Pelajaran 24 dari 90.

Saat menggunakan operator logika seperti and, or, dan not, Lua perlu menentukan apa yang dianggap "true" atau "false" dalam konteks logika. Konsep ini disebut nilai truthy dan falsy, dan Lua menanganinya dengan cara yang berbeda dari banyak bahasa pemrograman lainnya.

Dalam Lua, hanya dua nilai yang dianggap falsy (diperlakukan sebagai false dalam operasi logika):

print(false and "This won't print")  -- false bernilai falsy
print(nil and "This won't print")    -- nil bernilai falsy

Perhatikan bahwa and dan or mengembalikan salah satu operandnya, bukan hanya true atau false: a and b menghasilkan a ketika a falsy, jika tidak, menghasilkan b; a or b menghasilkan a ketika a truthy, jika tidak, menghasilkan b. Jadi, dua baris di atas mencetak false dan nil, dan setiap baris di bawah mencetak teksnya.

Semua hal lain di Lua dianggap truthy (diperlakukan sebagai true dalam operasi logika). Ini mencakup nilai yang mungkin mengejutkanmu jika kamu berasal dari bahasa pemrograman lain:

print(0 and "This will print")      -- 0 bernilai truthy di Lua!
print("" and "This will print")     -- string kosong bernilai truthy!
print({} and "This will print")     -- Tabel kosong bernilai truthy!

Coba sendiri

Pelajaran ini tidak memiliki tantangan kode.

quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler Lua online