0Pricing
Zig Academy · Pelajaran

null Dibandingkan dengan undefined

Dua jenis ketiadaan yang berbeda.

null Dibandingkan dengan undefined adalah pelajaran Zig Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Zig Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Zig Academy mencakup 4 pelajaran total.

Dua Kata, Dua Makna

Zig memiliki null dan undefined, dan keduanya tidak sama. Keliru mencampurkan keduanya adalah sumber bug yang membingungkan.

null Berarti Tidak Ada Nilai

null adalah keadaan nyata yang terdefinisi: ini menyatakan bahwa optional tersebut sengaja tidak menyimpan apa pun. Nilai ini bermakna dan dapat diperiksa.

const x: ?i32 = null;

undefined Berarti Belum Ditentukan

undefined berarti penyimpanannya ada, tetapi isinya masih berupa data acak. Anda berjanji akan menulis nilai nyata sebelum membacanya.

var buf: [4]u8 = undefined;

Hanya Optional yang Menyimpan null

Anda hanya dapat menetapkan null ke tipe optional. i32 biasa tidak akan pernah menerimanya karena ketiadaan bukan bagian dari tipenya.

Tipe Apa Pun Dapat Bernilai undefined

Sebaliknya, hampir semua variabel dapat dimulai sebagai undefined untuk memesan memori sekarang dan mengisinya sesaat kemudian.

var total: i32 = undefined;

Membaca null Aman

Memeriksa optional terhadap null sepenuhnya aman dan memang diharapkan; begitulah cara Anda mendeteksi nilai yang tidak ada.

Membaca undefined Adalah Bug

Membaca nilai yang masih undefined adalah perilaku ilegal. Bahkan build aman mengisinya dengan byte 0xAA untuk menyingkap kesalahan tersebut.

Janji kepada Diri Sendiri

Anggap undefined sebagai kontrak: Anda berjanji untuk menetapkan nilai sebelum menggunakannya. Jika dilanggar, Anda membaca data yang tidak bermakna dan tidak dapat diprediksi.

Pola Buffer yang Umum

Idiom yang sering digunakan adalah mendeklarasikan buffer sebagai undefined, lalu segera mengisinya dari pembacaan atau pemanggilan format.

var line: [256]u8 = undefined;

Pilih Alat yang Tepat

Gunakan null untuk memodelkan sifat yang benar-benar opsional. Gunakan undefined hanya untuk melewati inisialisasi yang tidak perlu dan akan langsung ditimpa.

Pertanyaan yang Sepenuhnya Berbeda

null menjawab apakah suatu nilai ada, sedangkan undefined menjawab apakah memori sudah ditulisi. Memisahkan keduanya membuat Anda tetap aman.

Pemeriksaan Singkat

Anda mendeklarasikan var buf: [8]u8 = undefined; lalu membaca buf[0] sebelum menulisnya. Apa yang terjadi?

Rangkuman

Anda telah membedakan null (nilai nyata yang tidak ada untuk optional) dari undefined (memori yang belum diinisialisasi dan harus ditulisi terlebih dahulu). Dua gagasan yang tidak boleh tertukar. 🧠

Pertanyaan yang Sering Diajukan

Apakah pelajaran “null Dibandingkan dengan undefined” gratis?

Ya — teks lengkap “null Dibandingkan dengan undefined” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Zig Academy, upgrade ke CoddyKit PRO. Kursus Zig Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “null Dibandingkan dengan undefined”?

Dua jenis ketiadaan yang berbeda. Kamu berlatih Zig Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Zig Academy?

Tidak diperlukan pengalaman sebelumnya. Zig Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “null Dibandingkan dengan undefined” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Zig Academy ini?

Ya. Setiap pelajaran Zig Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Mendeklarasikan Tipe Opsional
  2. Membuka Bungkus dengan Aman menggunakan if dan orelse
  3. Penunjuk Opsional dan ?*T
  4. null Dibandingkan dengan undefined
← Kembali ke Zig Academy