Tutorial Lua/Pemboleh Ubah
Modul-modul Lua yang berlandaskan penyambung Scribunto/Lua distor dalam laman-laman sumber yang menggunakan ruang nama Modul:. Setiap modul menggunakan jadual untuk memegang fungsi dan pemboleh ubah, dan jadual itu dipulangkan pada penghujung kod modul.[1]
Pemboleh ubah merupakan tempat yang menyimpan nilai. Bab ini akan menunjukkan cara untuk menambah pemboleh ubah pada fungsi-fungsi anda.
Prasyarat
[sunting]Bab ini menganggap yang anda sudah selesai dengan bab Modul.
Buat skrip Lua dengan Pemboleh ubah
[sunting]Untuk membuat skrip Lua dengan pemboleh ubah:
1. Pergi ke Modul:Kotak pasir.
2. Buang semua kod yang terdapat dalam kotak pasir.
Ia sebuah kotak pasir. Semua orang boleh bermain di kotak pasir. Tetapi, jika anda mendapati ada seorang pennguna lain yang sedang menyunting kotak pasir, anda juga boleh menggunakan 'Modul:Kotak pasir/Nama pengguna', dengan 'Nama pengguna' diganti oleh nama pengguna anda.
3. Tambah kod berikut dan simpan laman:
local p = {}
function p.pemboleh_ubah()
local pemboleh_ubah = 1
pemboleh_ubah = pemboleh_ubah + 1
return pemboleh_ubah
end
return p
Uji skrip Lua anda
[sunting]Untuk menguji skrip pertama anda:
- Pergi ke sama ada ke laman Module talk:Kotak pasir, Wikibuku: Kotak pasir ataupun laman pengguna atau kotak pasir anda.
- Tambah kod ini dan simpan laman:
{{#invoke:Kotak pasir|pemboleh_ubah}}
Hasinya:
2
Memahami skrip Lua anda
[sunting]1. local
memberi definisi skop pemboleh ubah yang diisytiharkan.
Jika anda sudah biasa dengan skop pemboleh ubah, sila perhatikan yang secara lalainya, pemboleh_ubah Lua merupakan pemboleh_ubah global. Amalan terbaik buat para pengatur cara ialah untuk menggunakan pemboleh ubah local
("lokal") sejauh mungkin; justeru pemboleh ubah harus diisytihar dengan kata kunci local
dalam kebanyakan kes.
Dengan menggunakan local
dalam fungsi ini, kita dapat memastikan yang nilai pemboleh ubah hanya dapat dicapai dan diubah dalam fungsi tersebut.
2. pemboleh_ubah
memberi definisi nama pemboleh ubah.
Nama bagi pemboleh ubah agak fleksibel, akan tetapi tidak boleh terdiri daripada daripada kat kunci Lua. Misalnya anda tidak boleh membuat pemboleh ubah yang dinamakan "local".
3. = 1
menetapkan nilai 1 kepada pemboleh ubah.
Pemboleh ubah yang tidak diberikan nilai asal akan mendapat nilai nil
, yang menunjukkan yang pemboleh ubah tidak mengandungi apa-apa nilai.
4. pemboleh_ubah = pemboleh_ubah + 1
mengambil nilai pemboleh_ubah dan menambah 1 kepadanya, kemudian mengstor hasil hitungan balik ke dalam pemboleh_ubah.
Pemboleh ubah boleh digunakan sebagai sumber dan tempat tuju ungkapan (penghitungan).
5. return pemboleh_ubah
memulangkan nilai semasa pemboleh_ubah sebagai hasil fungsi.
Nilai-nilai angka ditukarkan secara tersirat kepada rentetan apabila nilai-nilai tersebut dipulangkan oleh modul.
6. {{#invoke:Kotak pasir|pemboleh_ubah}} memanggil fungsi pemboleh_ubah modul Kotak pasir.
Setiap fungsi Lua boleh memiliki satu atau lebih pemboleh ubah bagi menyimpan nilai buat fungsi-fungsi.
Penutup
[sunting]Tahniah! Anda sudah membuat, menguji, menyunting dan memahami skrip Lua yang mengandungi pemboleh ubah. Teruskan dengan bab tentang Ungkapan.