Rumah  >  Artikel  >  hujung hadapan web  >  Kaji ciri dan kegunaan let, var dan const

Kaji ciri dan kegunaan let, var dan const

WBOY
WBOYasal
2024-02-26 08:51:05492semak imbas

Kaji ciri dan kegunaan let, var dan const

Fahami intipati let, var dan const: Untuk meneroka makna dan aplikasi praktikal masing-masing, contoh kod khusus diperlukan

Dalam JavaScript, kita sering menemui tiga kata kunci: let, var dan const. Kedua-duanya digunakan untuk mengisytiharkan pembolehubah, tetapi terdapat beberapa perbezaan penting di antara mereka. Artikel ini akan menyelidiki sifat ketiga-tiga kata kunci ini dan menggambarkan perbezaan dan penggunaannya dalam aplikasi praktikal melalui contoh kod tertentu.

  1. let

let ialah kata kunci yang diperkenalkan dalam ES6 untuk mengisytiharkan pembolehubah pada tahap blok. Ciri utamanya ialah pembolehubah yang diisytiharkan hanya sah dalam skop semasa dan tidak akan dinaikkan ke skop luar. Berikut ialah contoh mudah:

function foo() {
  if (true) {
    let x = 10;
    console.log(x); // 输出10
  }
  console.log(x); // 报错,x未定义
}

foo();

Dalam contoh ini, pembolehubah x diisytiharkan dalam skop peringkat blok bagi pernyataan if. Jadi, console.log pertama mengeluarkan nilai pembolehubah x, 10, tetapi console.log kedua melemparkan ralat apabila mengakses pembolehubah x dalam skop luar.

  1. var

var ialah kata kunci yang digunakan untuk mengisytiharkan pembolehubah dalam ES5. Tidak seperti let, pembolehubah yang diisytiharkan dengan var akan dinaikkan pangkat ke skop luar. Berikut ialah contoh:

function foo() {
  console.log(x); // 输出undefined
  if (true) {
    var x = 10;
    console.log(x); // 输出10
  }
  console.log(x); // 输出10
}

foo();

Dalam contoh ini, walaupun pembolehubah x diisytiharkan sebelum digunakan, keluaran console.log pertama tidak ditentukan dan bukannya melemparkan ralat Ini kerana pembolehubah x dipromosikan dalam skop. Di dalam pernyataan if, pembolehubah x diberikan nilai 10 dan masih sah dalam skop luar.

Selain itu, pembolehubah yang diisytiharkan dengan var boleh diisytiharkan berulang kali. Berikut ialah contoh:

var x = 5;
var x = 10;

console.log(x); // 输出10

Ini bermakna pembolehubah yang sama boleh diisytiharkan berbilang kali dalam skop yang sama menggunakan kata kunci var, dan pengisytiharan seterusnya akan menimpa nilai sebelumnya.

  1. const

const juga merupakan kata kunci yang diperkenalkan dalam ES6 untuk mengisytiharkan pemalar. Tidak seperti let dan var, pembolehubah yang diisytiharkan dengan const tidak boleh mengubah suai nilainya melalui tugasan selepas pengisytiharan, dan mesti dimulakan pada masa pengisytiharan. Berikut ialah contoh:

const x = 5;
x = 10; // 报错,不能重新赋值给常量

Dalam contoh ini, menetapkan semula pemalar x akan menimbulkan ralat kerana pembolehubah yang diisytiharkan sebagai const tidak boleh diubah suai.

Perlu diambil perhatian bahawa pembolehubah yang diisytiharkan sebagai const masih mempunyai ciri-ciri skop peringkat blok. Contohnya adalah seperti berikut:

function foo() {
  if (true) {
    const x = 10;
    console.log(x); // 输出10
  }
  console.log(x); // 报错,x未定义
}

foo();

Sama seperti let, pembolehubah yang diisytiharkan sebagai const hanya sah dalam skop semasa.

Ringkasnya, let, var dan const mewakili makna dan penggunaan yang berbeza. let digunakan untuk mengisytiharkan pembolehubah dalam skop blok, var digunakan untuk mengisytiharkan pembolehubah dalam skop fungsi dan boleh ditugaskan semula, dan const digunakan untuk mengisytiharkan pemalar dan nilai tidak boleh diubah suai. Penggunaan yang betul bagi ketiga-tiga kata kunci ini boleh mengawal skop dan ketidakbolehubah pembolehubah dengan lebih baik, dan meningkatkan kebolehbacaan dan kebolehselenggaraan kod.

Atas ialah kandungan terperinci Kaji ciri dan kegunaan let, var dan const. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn