Fungsi Tanpa Nilai Kembalian
Termasuk bagian Pengantar Luau dalam perjalanan Lua di Coddy. Pelajaran 25 dari 80.
Banyak fungsi tidak menghitung nilai. Fungsi tersebut melakukan sesuatu: mencetak pesan, memperbarui tabel, menyimpan status. Di Luau, kamu dapat memberi anotasi bahwa fungsi tidak mengembalikan apa pun dengan tipe pengembalian kosong ():
local function logMessage(message: string): ()
print(message)
end
local counter = 0
local function incrementCounter(): ()
counter += 1
endJika kamu pernah melihat TypeScript, () berperan seperti void, tetapi penulisan di Luau menggunakan sepasang tanda kurung kosong, yang secara harfiah berarti "nol nilai pengembalian".
Anotasi ini opsional: hilangkan saja dan Luau akan menyimpulkan bahwa fungsi tersebut tidak mengembalikan apa pun. Menulis : () secara eksplisit mendokumentasikan maksudmu: siapa pun yang membaca tanda tangan fungsi itu akan tahu bahwa fungsi ini dipanggil untuk efek samping, bukan untuk hasilnya.
Saat program berjalan, tidak ada yang berubah (seperti biasanya): fungsi tanpa nilai return akan menghasilkan nil jika kamu mencoba menyimpan hasilnya: sama seperti Lua biasa.
Tantangan
MudahTulis dua fungsi yang mencetak dan tidak mengembalikan apa pun.
- Tulis
local function displayWelcome(userName: string): ()yang mencetak`Welcome, {userName}!`. - Tulis
local function logError(errorMessage: string): ()yang mencetak`ERROR: {errorMessage}`. - Panggil
displayWelcome("Alice"), lalulogError("Invalid input").
Tekan Run Code: output menampilkan Welcome, Alice! dan ERROR: Invalid input.
Coba sendiri
-- 1) displayWelcome(userName: string): ()
-- 2) logError(errorMessage: string): ()
-- 3) panggil displayWelcome("Alice"), lalu logError("Invalid input")
Semua pelajaran di Pengantar Luau
1Memulai dengan Luau
Apa Itu Luau?Mengapa Menggunakan Luau?Kode Luau PertamamuPemeriksaan Tipe dan Mode ErrorRangkuman: Pengenalan Luau4Bekerja dengan Fungsi
Mengetik Parameter dan Nilai KembalianMengetik Fungsi AnonimFungsi Tanpa Nilai KembalianParameter OpsionalNilai Parameter DefaultNilai Default untuk BooleanFungsi VariadikMendefinisikan Tipe FungsiUlasan: Fungsi Bertipe2Tipe Inti
Number, String, dan BooleanTipe 'any': Jalan KeluarTipe 'unknown'Nil dan Tipe OpsionalInferensi Tipe dalam PraktikAnotasi Tipe EksplisitUlasan: Latihan Tipe Inti5Alias, Union, dan Intersection
Alias Tipe untuk Tipe PrimitifTipe UnionMenggunakan Tipe UnionTipe LiteralTipe IntersectionMenggabungkan Alias TipeRekap: Kombinasi Tipe Lanjutan3Tabel Bertipe: array & map
Array BertipeMenambahkan dan Membaca ElemenApa Itu Tipe Map?Mendeklarasikan dan Mengakses MapMenelusuri TabelTabel dengan Bentuk CampuranMembaca GridMembuat Gridtable.unpackRangkuman: array dan mapLatihan sendiri: Compiler Luau online