Rumah > hujung hadapan web > tutorial js > Bilakah Penyataan \'dengan\' JavaScript Digunakan Secara Sah?

Bilakah Penyataan \'dengan\' JavaScript Digunakan Secara Sah?

Linda Hamilton
Lepaskan: 2024-11-22 07:24:10
asal
598 orang telah melayarinya

When is JavaScript's

Meneroka Penggunaan Sah untuk Pernyataan "dengan" JavaScript

Apabila menggunakan pernyataan "dengan", adalah penting untuk mempertimbangkan kedua-dua manfaat dan potensinya kelemahan. Walaupun ia boleh berguna dalam senario tertentu, adalah penting untuk menggunakannya secara bertanggungjawab untuk mengelakkan tingkah laku yang tidak dijangka.

Satu penggunaan sah "dengan" adalah untuk menentukan pembolehubah dalam skop blok sebelum ES6. JavaScript secara semula jadi tidak merangkumi pembolehubah kepada blok yang ditakrifkan, yang boleh membawa kepada isu apabila mengisytiharkan penutupan dalam gelung.

Sebagai contoh, kod berikut tanpa pernyataan "dengan" akan berkongsi "dengan" yang sama pembolehubah num" merentas berbilang fungsi tamat masa:

for (var i = 0; i < 3; ++i) {
  var num = i;
  setTimeout(() => { alert(num); }, 10);
}
Salin selepas log masuk

Dengan pernyataan "dengan", anda boleh mensimulasikan skop blok yang diperlukan untuk mengasingkan pembolehubah "num" bagi setiap tamat masa:

for (var i = 0; i < 3; ++i) {
  with ({num: i}) {
    setTimeout(() => { alert(num); }, 10);
  }
}
Salin selepas log masuk

Perhatikan bahawa ini tidak akan menjejaskan skop pembolehubah yang diisytiharkan dalam blok.

Satu lagi potensi penggunaan "dengan" adalah untuk organisasi kod. Meletakkan ahli objek yang kerap diakses dalam skop blok "dengan" boleh menjadikan kod lebih mudah dibaca dan diselenggara. Walau bagaimanapun, adalah penting untuk menggunakan ini dengan berhati-hati untuk mengelakkan potensi isu prestasi dan tingkah laku yang tidak dijangka.

Atas ialah kandungan terperinci Bilakah Penyataan 'dengan' JavaScript Digunakan Secara Sah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan