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 falsyPerhatikan 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.
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator 2: Relasional dan Logika
Operator KesetaraanOperator RelasionalOperator 'and'Operator 'or'Operator 'not'Evaluasi Hubung SingkatNilai Truthy dan FalsyRangkuman: Logika Sederhana7Logika Percabangan Dasar
Pernyataan if-thenPernyataan if-then-elsePernyataan elseifRangkuman: Peti Harta Karun10Tabel Bagian 1: Gaya list
Apa itu Tabel?Membuat TabelMengakses Elemen berdasarkan IndeksMengubah Elemen berdasarkan IndeksOperator Panjang '#'table.insert()table.remove()Ringkasan: Kelola Anggota Pesta13Proyek: Toko Ramuan Sederhana
Menyiapkan ProyekMenambahkan Ramuan2Variabel dan Tipe Data
Apa Itu Variabel?AngkastringBooleanNilai 'nil'Fungsi type()Konvensi PenamaanUlasan: Profil Karakter5Output Dasar
Mencetak Nilai LiteralMencetak VariabelMencetak Beberapa NilaiMenggabungkan string dan VariabelFungsi tostring()inputKonversi TipeRangkuman: Laporan StatusRangkuman: Sampai 1208Dasar Manipulasi string
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Rangkuman: Format Nama Pengguna3Operator 1 Aritmetika & Penggabungan
Operator AritmetikaOperator ModuloOperator PemangkatanPenggabungan stringPrioritas OperatorRingkasan: Perhitungan Sederhana6Proyek: Menampilkan Statistik Karakter
Pesan SambutanDeklarasikan Statistik Karakter9Dasar-Dasar Fungsi
Mendeklarasikan FungsiMemanggil FungsiFungsi dengan ParameterFungsi dengan Beberapa ParameterPernyataan 'return'Rekap: Kalkulator LuasLatihan sendiri: Compiler Lua online