Ketahui lebih lanjut tentang let, var dan const: Apakah maksudnya?

WBOY
Lepaskan: 2024-02-21 18:03:04
asal
575 orang telah melayarinya

Ketahui lebih lanjut tentang let, var dan const: Apakah maksudnya?

Fahami let, var dan const secara mendalam: apakah maksudnya?

Dalam JavaScript, kami mempunyai tiga cara berbeza untuk mengisytiharkan pembolehubah, iaitu let, var dan const. Mereka mempunyai beberapa perbezaan dalam fungsi dan penggunaan Di bawah ini kita akan menyelidiki maksud dan penggunaan masing-masing.

  1. let:
    let ialah kata kunci baharu yang diperkenalkan dalam ES6 untuk mengisytiharkan pembolehubah berskop blok. Cirinya ialah pembolehubah mempunyai skop peringkat blok dan hanya boleh dilihat di dalam blok tempat pembolehubah diisytiharkan. Senario penggunaan yang lebih biasa ialah mengisytiharkan pembolehubah setempat dalam badan gelung, pernyataan atau fungsi bersyarat.

Kod contoh:

function foo() {
  if (true) {
    let x = 10;  // 只在if块内可见
    console.log(x);  // 输出10
  }
  console.log(x);  // ReferenceError: x is not defined
}

foo();
Salin selepas log masuk
  1. var:
    Dalam ES5, kami mengisytiharkan pembolehubah menggunakan kata kunci var. Berbeza daripada let, pembolehubah yang diisytiharkan oleh var ialah pembolehubah skop peringkat fungsi dan skopnya ialah keseluruhan fungsi, bukan skop peringkat blok. Pada masa yang sama, pembolehubah yang diisytiharkan dengan var mempunyai ciri promosi pembolehubah, iaitu, ia boleh digunakan sebelum pengisytiharan.

Contoh kod:

function foo() {
  if (true) {
    var x = 10;  // 函数级作用域,整个函数可见
    console.log(x);  // 输出10
  }
  console.log(x);  // 输出10
}

foo();
Salin selepas log masuk

Ciri promosi berubah-ubah juga boleh diuji dalam blok kod yang berbeza:

function foo() {
  console.log(x);  // 输出undefined,而不是ReferenceError: x is not defined
  if (true) {
    var x = 10;  // 变量提升
  }
  console.log(x);  // 输出10
}

foo();
Salin selepas log masuk
  1. const:
    const digunakan untuk mengisytiharkan pemalar, yang bermaksud bahawa nilai pemalar tidak boleh diubah selepas pengisytiharan . Setelah ditugaskan, ia tidak boleh ditugaskan semula. Sama seperti let, const juga mempunyai skop peringkat blok dan hanya boleh dilihat dalam blok tempat pembolehubah diisytiharkan.

Kod contoh:

function foo() {
  const PI = 3.14;
  PI = 3.14159;  // TypeError: Assignment to constant variable
  console.log(PI);
}

foo();
Salin selepas log masuk

Perlu diingat bahawa pemalar yang diisytiharkan oleh const bermakna nilai pembolehubah tidak boleh diubah, bukannya objek yang dirujuk oleh pembolehubah tidak boleh diubah. Jika const mengisytiharkan objek, sifat objek boleh diubah suai, tetapi tidak boleh ditugaskan semula.

Kod sampel:

const obj = {x: 10};
obj.x = 20;  // 修改属性值
console.log(obj.x);  // 输出20

obj = {x: 30};  // TypeError: Assignment to constant variable
Salin selepas log masuk

Ringkasan:

  • biar digunakan pada pembolehubah skop peringkat blok dan hanya boleh dilihat di dalam blok yang diisytiharkan.
  • var sesuai untuk pembolehubah skop peringkat fungsi, boleh digunakan sebelum pengisytiharan, dan mempunyai ciri-ciri promosi berubah-ubah.
  • const digunakan untuk mengisytiharkan pemalar Nilai pemalar tidak boleh diubah selepas pengisytiharan, tetapi perhatikan perbezaan antara pengubahsuaian dan penugasan semula atribut objek.

Kaedah pengisytiharan berubah yang berbeza sesuai untuk senario yang berbeza dan penggunaan yang munasabah boleh meningkatkan kebolehbacaan dan kebolehselenggaraan kod. Saya berharap pengenalan dalam artikel ini dapat membantu pembaca lebih memahami dan menggunakan let, var dan const.

Atas ialah kandungan terperinci Ketahui lebih lanjut tentang let, var dan const: Apakah maksudnya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!