Lewati ke konten

Kondisional

have_coins = false
if have_coins
print "Dapat koin"
else
print "Tidak ada koin"

Sintaks pendek untuk pernyataan tunggal juga bisa digunakan:

have_coins = false
if have_coins then print "Dapat koin" else print "Tidak ada koin"

Karena pernyataan if dapat digunakan sebagai ekspresi, ini juga bisa ditulis sebagai:

have_coins = false
print if have_coins then "Dapat koin" else "Tidak ada koin"

Kondisional juga bisa digunakan di pernyataan return dan assignment:

is_tall = (name) ->
if name == "Rob"
true
else
false
message = if is_tall "Rob"
"Saya sangat tinggi"
else
"Saya tidak terlalu tinggi"
print message -- prints: Saya sangat tinggi

Kebalikan dari if adalah unless:

unless os.date("%A") == "Monday"
print "hari ini bukan Senin!"
print "Kamu beruntung!" unless math.random! > 0.1

Anda dapat menulis kode pengecekan rentang dengan ekspresi in.

a = 5
if a in [1, 3, 5, 7]
print "memeriksa kesamaan dengan nilai-nilai diskrit"
if a in list
print "memeriksa apakah `a` ada di dalam daftar"

Operator in juga dapat digunakan dengan tabel dan mendukung varian not in untuk negasi:

has = "foo" in {"bar", "foo"}
if a in {1, 2, 3}
print "a ada di dalam tabel"
not_exist = item not in list
check = -> value not in table

Daftar atau tabel dengan satu elemen memeriksa kesamaan dengan elemen tersebut:

-- [1,] memeriksa apakah nilai == 1
c = a in [1,]
-- {1} juga memeriksa apakah nilai == 1
c = a in {1}
-- Tanpa koma, [1] adalah akses indeks (tb[1])
with tb
c = a in [1]

YueScriptKompiler

Memuat kompiler…