Tipe Data
NusaScript mendukung beberapa tipe data dasar: bilangan, desimal, teks, boolean, array, peta, dan nihil.
Ringkasan Tipe Data
| Tipe | Kata Kunci | Contoh | Keterangan |
|---|---|---|---|
| Bilangan Bulat | bilangan | 42, -10, 0 | Integer 64-bit |
| Bilangan Desimal | desimal | 3.14, -0.5 | Float 64-bit |
| Teks | teks | "Halo" | String UTF-8 |
| Boolean | bool | benar, salah | true / false |
| Array | array | [1, 2, 3] | Koleksi berurutan |
| Peta | peta | peta("k", "v") | Key-value store |
| Tipe Custom | tipe | tipe Nama { } | Struct buatan sendiri |
| Nihil | nihil | nihil | Tidak ada nilai |
Bilangan Bulat
Contoh
buat positif = 100
buat negatif = -50
buat nol = 0
buat besar = 1000000
tampilkan(positif + negatif) // 50
tampilkan(tipe(positif)) // bilangan
Output
50 bilangan
Bilangan Desimal
Contoh
buat pi = 3.14159
buat suhu = -12.5
buat persen = 0.85
tampilkan(pi * 2) // 6.28318
tampilkan(tipe(pi)) // desimal
Output
6.28318 desimal
Teks (String)
Contoh
buat kota = "Bandung"
buat sapaan = "Halo, " + kota + "!"
buat multiline = "Baris pertama\nBaris kedua"
tampilkan(sapaan)
tampilkan(panjang(kota)) // 7 karakter
tampilkan(tipe(kota)) // teks
Output
Halo, Bandung! 7 teks
Boolean
Contoh
buat sukses = benar
buat gagal = salah
buat cek = 10 > 5 // benar
tampilkan(sukses) // benar
tampilkan(tidak sukses) // salah
tampilkan(tipe(sukses)) // bool
Output
benar salah bool
Konversi Antar Tipe
| Fungsi | Dari | Ke | Contoh |
|---|---|---|---|
ke_teks(x) | Apa saja | Teks | ke_teks(42) → "42" |
ke_bilangan(x) | Teks / Desimal | Bilangan | ke_bilangan("10") → 10 |
ke_desimal(x) | Teks / Bilangan | Desimal | ke_desimal("3.14") → 3.14 |
Contoh Konversi
buat angka = 42
buat teks_angka = ke_teks(angka) // "42"
buat kembali = ke_bilangan(teks_angka) // 42
tampilkan(teks_angka + " rupiah") // "42 rupiah"
tampilkan(kembali + 8) // 50
Output
42 rupiah 50
Cek Tipe Data — tipe()
Contoh
tampilkan(tipe(42)) // bilangan
tampilkan(tipe(3.14)) // desimal
tampilkan(tipe("halo")) // teks
tampilkan(tipe(benar)) // bool
tampilkan(tipe([1,2,3])) // array
tampilkan(tipe(nihil)) // nihil
Output
bilangan desimal teks bool array nihil
Tipe Data Custom (Struct)
NusaScript memungkinkan Anda mendefinisikan tipe data sendiri menggunakan keyword tipe. Ini seperti struct di Go atau class di bahasa lain.
Mendefinisikan Tipe
Definisi Struct
tipe Pengguna {
nama: teks
umur: bilangan
email: teks
}
📌 Aturan: Nama tipe harus diawali huruf kapital — contoh:
Pengguna, Produk, Pesanan.Membuat Instance
Instansiasi Struct
buat user = Pengguna {
nama: "Budi Santoso",
umur: 25,
email: "budi@contoh.com"
}
tampilkan(user.nama) // "Budi Santoso"
tampilkan(user.umur) // 25
Output
Budi Santoso 25
Mengubah Field
Ubah Nilai Field
user.umur = 26
tampilkan(user.umur) // 26
Struct ke JSON
Serialisasi JSON
tampilkan(ke_json(user))
// {"nama":"Budi Santoso","umur":26,"email":"budi@contoh.com"}
Struct sebagai Model API
Contoh — Struct di API
tipe Produk {
id: bilangan
nama: teks
harga: bilangan
stok: bilangan
}
rute(app, "POST", "/api/produk", fungsi(req) {
buat body = dari_json(req.body)
buat produk = Produk {
id: 1,
nama: body.nama,
harga: body.harga,
stok: body.stok
}
kembalikan ke_json(produk)
})