Dalam jQuery, let ialah kata kunci untuk mengisytiharkan pembolehubah Kata kunci let membolehkan anda mengisytiharkan pembolehubah, pernyataan atau ungkapan yang skopnya terhad kepada skop blok. Pembolehubah yang diisytiharkan oleh let tidak akan dipromosikan dalam skop, ia dimulakan pada masa penyusunan; let tidak akan mencipta sifat objek tetingkap apabila diisytiharkan secara global (dalam skop peringkat atas).
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi jquery 3.6.0, komputer Dell G3.
Dalam jquery, mari ialah kata kunci yang mengisytiharkan pembolehubah.
Kata kunci let mengisytiharkan pembolehubah tempatan berskop blok dan boleh dimulakan kepada nilai (pilihan). Sintaks:
let name1 [= value1] [, name2 [= value2]] [, ..., nameN [= valueN];
Parameter
nameN: Nama satu atau lebih pembolehubah yang akan diisytiharkan, mestilah pengecam yang sah.
nilaiN: Pilihan, menentukan nilai awal pembolehubah, yang boleh menjadi sebarang ungkapan undang-undang.
Contoh:
let x = 1; if (x === 1) { let x = 2; console.log(x); // expected output: 2 } console.log(x); // expected output: 1
Penjelasan:
biar membenarkan anda mengisytiharkan skop Pembolehubah, pernyataan atau ungkapan yang dihadkan untuk menyekat skop. Berbeza daripada kata kunci var, skop pembolehubah yang diisytiharkan oleh var adalah global atau keseluruhan blok fungsi. Satu lagi perbezaan penting antara var dan let ialah pembolehubah yang diisytiharkan oleh let tidak akan dipromosikan dalam skop, ia dimulakan pada masa penyusunan (lihat zon mati sementara di bawah).
Sama seperti const , biarkan tidak akan mencipta sifat objek tetingkap apabila diisytiharkan secara global (pada skop peringkat atas).
Anda boleh mengetahui sebab kami menggunakan let di sini.
Banyak masalah boleh dielakkan dengan mengisytiharkan pembolehubah biarkan di bahagian atas skop tempat ia digunakan, tetapi berbuat demikian boleh menjejaskan kebolehbacaan.
Berbeza dengan var, marilah hanya permulaan pernyataan, bukan ungkapan lengkap. Ini bermakna anda tidak boleh mempunyai pengisytiharan biarkan berasingan sebagai badan blok kod (yang masuk akal, kerana pembolehubah yang diisytiharkan tidak boleh diakses).
if (true) let a = 1; // SyntaxError: Lexical declaration cannot appear in a single-statement context
Peraturan skop
Skop pembolehubah yang diisytiharkan oleh let hanya dalam blok atau sub-blok di mana ia diisytiharkan var. Perbezaan utama antara kedua-duanya ialah skop pembolehubah yang diisytiharkan dengan var ialah keseluruhan fungsi melampirkan.
function varTest() { var x = 1; { var x = 2; // same variable! console.log(x); // 2 } console.log(x); // 2}function letTest() { let x = 1; { let x = 2; // different variable console.log(x); // 2 } console.log(x); // 1} letTest(); varTest();
Dalam skop global, let berbeza daripada var kerana ia tidak mencipta sifat pada objek global. Contohnya:
var x = 'global'; let y = 'global'; console.log(this.x); // "global" console.log(this.y); // undefined
Pengisytiharan berulang
Pengisytiharan berulang pembolehubah yang sama dalam fungsi yang sama atau skop blok akan membuang SyntaxError berlaku.
if (x) { let foo; let foo; // SyntaxError thrown. }
Ralat ini juga akan dicetuskan dalam pernyataan suis kerana ia adalah skop blok yang sama.
let x = 1; switch(x) { case 0: let foo; break; case 1: let foo; // SyntaxError for redeclaration. break; }
Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa blok bersarang dalam klausa kes mewujudkan persekitaran leksikal berskop blok baharu dan tidak Ralat yang akan mengakibatkan rayuan diulang.
let x = 1; switch(x) { case 0: { let foo; break; } case 1: { let foo; break; } }
[Pembelajaran yang disyorkan: tutorial video jQuery, video bahagian hadapan web]
Atas ialah kandungan terperinci Apakah maksud kata kunci let in jquery. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!