Akademi JavaScript · Pelajaran

Skop Blok/Fungsi/Modul dan TDZ

Fahami skop blok, fungsi dan modul; lihat TDZ dalam tindakan dan elakkan pemboleh ubah terlepas.

Pelajaran 2 daripada 38 langkah

Skop Blok/Fungsi/Modul dan TDZ ialah pelajaran Akademi JavaScript percuma di CoddyKit. Ini ialah pelajaran 2 daripada 3. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Akademi JavaScript, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Akademi JavaScript merangkumi sejumlah 3 pelajaran.

Pengenalan

Matlamat: Ketahui tempat pemboleh ubah berada dan masa pemboleh ubah boleh digunakan.

  • Skop blok (let/const)
  • Skop fungsi (var)
  • Skop modul
  • Keselamatan TDZ
Skop Blok/Fungsi/Modul dan TDZ — ilustrasi 1

Demonstrasi skop blok

Skop blok memastikan pemboleh ubah setempat pada sepasang pendakap keriting.

// Block scope: let/const exist only inside the braces
let lives = 3;

if (true) {
  const bonus = 5;
  let level = 1;
  console.log("Inside block:", bonus, level);
}

console.log("Lives:", lives);
// Uncommenting next line would fail (not in scope):
// console.log(bonus, level);
Skop Blok/Fungsi/Modul dan TDZ — ilustrasi 2

Skop fungsi dengan var

var menggunakan skop fungsi, bukan skop blok. Utamakan let/const dalam JS moden.

// Function scope: var is visible across the whole function
function demo() {
  if (true) {
    var x = 10; // function-scoped
  }
  console.log("x is visible here:", x); // 10
}
demo();
Skop Blok/Fungsi/Modul dan TDZ — ilustrasi 3

Asas skop modul

Skop modul: pengikatan peringkat teratas adalah setempat kepada fail (modul ES).

// Module scope: top-level variables are local to the module file
const appName = "CoddyKit";
console.log("App name:", appName);

// In a real project, this would be its own file/module.
// Other files must import to access appName.
Skop Blok/Fungsi/Modul dan TDZ — ilustrasi 4

Zon Mati Temporal

TDZ menghalang pembacaan awal secara tidak sengaja. Isytiharkan dahulu, kemudian gunakan.

// TDZ: using let/const before declaration throws ReferenceError
try {
  // Uncommenting would trigger TDZ:
  // console.log(mode); // ReferenceError
  let mode = "dark";
  console.log("Mode after declare:", mode);
} catch (e) {
  console.log("Caught:", e.message);
}
Skop Blok/Fungsi/Modul dan TDZ — ilustrasi 5

Perangkap skop

Perangkap:

  • Jangan campurkan var dengan let/const dalam skop yang sama.
  • Isytiharkan pemboleh ubah dekat dengan penggunaannya.
  • Elakkan membaca nilai sebelum baris pengisytiharan (TDZ).
Skop Blok/Fungsi/Modul dan TDZ — ilustrasi 6

Kuiz TDZ

Semakan pantas: Tingkah laku TDZ.

Skop Blok/Fungsi/Modul dan TDZ — ilustrasi 7

Rumusan

Rumusan: let/const menggunakan skop blok; var menggunakan skop fungsi; modul mempunyai skop failnya sendiri; TDZ menghalang capaian terlalu awal.

Skop Blok/Fungsi/Modul dan TDZ — ilustrasi 8
Percuma untuk bermula

Pelajari JavaScript dengan tutor kecerdasan buatan — percuma

Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.

Kursus
59
Pelajaran
200

Soalan Lazim

Adakah pelajaran “Skop Blok/Fungsi/Modul dan TDZ” percuma?

Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Akademi JavaScript, termasuk “Skop Blok/Fungsi/Modul dan TDZ”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Akademi JavaScript merangkumi sejumlah 3 pelajaran.

Apakah yang akan saya pelajari dalam “Skop Blok/Fungsi/Modul dan TDZ”?

Fahami skop blok, fungsi dan modul; lihat TDZ dalam tindakan dan elakkan pemboleh ubah terlepas. Anda berlatih Akademi JavaScript menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.

Adakah saya memerlukan pengalaman untuk memulakan Akademi JavaScript?

Tiada pengalaman terdahulu diperlukan. Pembelajaran Akademi JavaScript di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 3.

Berapa lamakah pelajaran “Skop Blok/Fungsi/Modul dan TDZ” diambil?

Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.

Bolehkah saya menulis dan menjalankan kod dalam pelajaran Akademi JavaScript ini?

Ya. Setiap pelajaran Akademi JavaScript menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.

Semua pelajaran dalam kursus ini

  1. let, const dan Mengelakkan var
  2. Skop Blok/Fungsi/Modul dan TDZ
  3. Penamaan, Kebolehbacaan dan Perangkap Lazim
← Kembali ke Akademi JavaScript