4 Pernyataan JavaScript Berguna Yang Harus Anda Ketahui
Pernyataan JavaScript memberi kita kekuatan untuk mengimplementasikan berbagai jenis logika dalam kode kita. JavaScript memberi kita beberapa di antaranya, yang semuanya memiliki tujuan dan sintaksisnya sendiri. Di antara contoh yang paling terkenal kita dapat menemukan pernyataan ekspresi, pernyataan iterasi, pernyataan kondisional, dan banyak lagi
Dalam posting hari ini kita akan lihat empat pernyataan JavaScript yang kurang umum Anda mungkin belum tahu sebelumnya, tetapi bisa memperdalam pengetahuan JavaScript Anda, dan memungkinkan Anda untuk menulis kode yang lebih baik.
1. Pernyataan Kosong
Di tempat pernyataan JavaScript apa pun, Anda dapat menambahkan pernyataan kosong, yang ditulis sebagai satu titik koma ;
. Ketika penerjemah JavaScript mengartikan pernyataan kosong, tidak ada kode yang dieksekusi, oleh karena itu mereka dapat bermanfaat bagi ganti sub-pernyataan yang tidak ingin Anda lakukan.
Misalnya, anggap ada variabel yang disebut lakmus
dengan nilai default netral
. Berdasarkan nilai variabel lain disebut pH
, lakmus
berubah menjadi salah satu bersifat asam
ketika pH < 7 or dasar
ketika pH> 7.
Jika nilai pH
ternyata tidak valid, kesalahan dilemparkan. Untuk sebuah kondisi seperti ini, pernyataan bersyarat berikut berlaku:
var litmus = 'netral'; pH pH; jika (pH> 0 && pH<7) litmus = 'acidic'; else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
Namun set pernyataan di atas melempar kesalahan saat pH
Nilai 7, yang seharusnya tidak demikian.
Kapan pH
adalah 7, lakmus
harus mempertahankan nilai standarnya, yaitu netral
. Jadi, untuk kasus seperti ini, tambahkan kondisi kapan pH
adalah 7 dengan pernyataan kosong tambahan.
var litmus = 'netral'; pH pH; jika (pH> 0 && pH<7) litmus = 'acidic'; else if(pH===7) ; /* empty statement */ else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
Sekarang kapan pH
adalah 7, penerjemah tidak menjalankan instruksi apa pun, dan lakmus
menyimpan nilai standarnya, netral
.
Pernyataan kosong juga dapat digunakan untuk mengisi array dengan bantuan untuk
lingkaran.
var ary = []; untuk (var i = 0; i < 5; ary[i++] = i) ; /* empty statement */ console.log(ary); // [1, 2, 3, 4, 5]
Biasanya, a untuk
pernyataan loop diikuti oleh sub-pernyataan yang terdiri dari satu, atau pernyataan blok (yang terlampir di kurung keriting) yang akan dieksekusi. Dengan menggunakan pernyataan kosong sebagai pengganti sub-pernyataan, penerjemah tidak akan memiliki apa pun untuk dieksekusi setelah setiap loop, jadi hanya perulangan terjadi, dan kondisi perulangan dijalankan.
Dalam contoh di atas, ary [i ++] = i
dieksekusi untuk setiap iterasi loop sebagai bagian dari kondisi looping, dan array ary
akan dipakai dengan nilai dari saya
.
2. The debugger
Pernyataan
Dalam alat debugging, kita bisa tambahkan spidol bernama breakpoints ke setiap baris dalam kode sumber ke tandai garis dari mana alat debugger akan mulai debugging.
Dalam JavaScript, the debugger
pernyataan bekerja dengan cara yang sama seperti breakpoint, kecuali itu ditambahkan ke dalam kode sumber secara langsung, daripada di dalam alat. Setiap debugger yang berjalan akan hentikan eksekusi skrip ketika mencapai debugger
pernyataan untuk membantu Anda men-debug kode.
Ingat, debugging akan terpicu hanya jika skrip berjalan dalam mode debugging, mis. program debugging sudah berjalan di atas eksekusi skrip. Jika saat ini tidak ada program debugger yang sedang menerjemahkan debugger
pernyataan, penerjemah akan melanjutkan pekerjaannya seolah-olah tidak ada yang terjadi.
Sebagai pengujian cepat, jalankan kode berikut di Codepen, sambil tetap membuka alat debugger browser:
console.log ('tesing'); debugger; console.log ('pernyataan debugging');
Anda akan melihat breakpoint selain debugger
pernyataan seperti yang ditunjukkan di bawah ini di alat debugger browser.
3. Pernyataan Berlabel
Dalam JavaScript, Anda juga dapat menambahkan label ke pernyataan tertentu. Dengan melakukan itu, Anda bisa kemudian lompat ke pernyataan berlabel menggunakan labelnya di kode Anda, agak seperti pergi ke
pernyataan bekerja dalam beberapa bahasa lain.
Pernyataan berlabel hanya dapat digunakan bersama dengan istirahat
dan terus
pernyataan, seperti dalam JavaScript tidak ada literal pergi ke
pernyataan.
Kedua istirahat
dan terus
hanya dapat digunakan di dalam pernyataan perulangan, seperti untuk
loop (dengan satu pengecualian, istirahat
dapat digunakan di beralih
pernyataan juga). Jadi, kita bisa memberi label loop, dan menggunakan istirahat
dan terus
untuk mengontrol eksekusi mereka.
Itu sintaks pernyataan berlabel sederhana, Anda hanya perlu menambahkan nama label dengan titik dua berikut, seperti yang Anda lihat pada contoh di bawah ini, di mana lingkaran
adalah nama label yang kita tambahkan ke untuk
lingkaran.
loop: untuk (var i = 0; i<5; i++) if(i===2) continue loop; console.log(i); // 0, 1, 3, 4
Ketika nilai saya
adalah 2, eksekusi melompat kembali ke loop daripada melanjutkan dan karenanya mencegah output konsol “2”.
Sekarang mari kita lihat contoh lain dengan istirahat
pernyataan. Cukup ganti terus
kata kunci dengan istirahat
dalam contoh di atas, dan Anda akan melihat bahwa alih-alih melompat kembali ke loop seperti sebelumnya terus
, loop berakhir / terputus sama sekali.
loop: untuk (var i = 0; i<5; i++) if(i===2) break loop; console.log(i); // 0, 1
Contoh-contoh di atas agak sederhana sehingga Anda dapat dengan cepat memahami cara kerja pernyataan berlabel, tetapi dalam pengkodean kehidupan nyata, label lebih sering digunakan dalam loop gabungan, ketika perlu untuk membedakan loop yang berbeda, seperti dalam contoh berikut:
loop: untuk (var i = 0; i<4; i++) for(var j=0; j<2; j++) if(i===2 && j===1) break loop; console.log(i+"-"+j);
Di sini, itu lingkaran luar istirahat pada nilai 2 untuk variabel saya
dan pada 1 untuk j
, dan konsol mengembalikan output berikut:
0-0 0-1 1-0 1-1 2-0
4. The dengan
Pernyataan
Ketika penerjemah JS menemukan nama yang tidak memenuhi syarat yang tidak menentukan objek atau fungsi panggilan yang dikaitkan dengannya mencari rantai lingkup untuk objek atau fungsi yang cocok, panggilan mungkin merujuk.
Dengan menggunakan dengan
pernyataan, kita bisa tambahkan objek ke atas rantai lingkup, dan tentukan objek yang dikaitkan dengan panggilan itu.
Pada contoh berikut, Anda dapat melihat bahwa properti dari orang
objek disebut menggunakan nama mereka sendiri di dalam dengan
pernyataan.
var person = firstName: "John", lastName: "Doe", usia: "18", negara: "Greenland"; dengan (orang) console.log ("Hai, nama saya adalah" + firstName + "" + lastName + ". Saya" + umur + "tahun, dan tinggal di" + negara + "."); // // "Hai, nama saya John Doe. Saya berusia 18 tahun, dan tinggal di Greenland."
Bandingkan bagaimana kode di atas akan terlihat tanpa menggunakan dengan
pernyataan:
var person = firstName: "John", lastName: "Doe", usia: "18", negara: "Greenland"; console.log ("Hai, nama saya" + person.firstName + "" + person.lastName + ". Saya" + person.age + "tahun, dan tinggal di" + person.country + "." ); // "Hai, namaku John Doe. Aku berumur 18 tahun, dan tinggal di Greenland."
Kamu dapat melihat dengan
pernyataan bisa menjadi jalan pintas yang bagus jika Anda bekerja dengan banyak properti dari objek yang sama.
Perhatikan bahwa menggunakan dengan
pernyataan dalam mode ketat tidak diperbolehkan, karena dapat menyebabkan beberapa ruang lingkup kebingungan.
Juga, hanya disarankan untuk menggunakan dengan
pernyataan jika pernyataan internalnya menggunakan objek yang terkait dengan dengan
pernyataan, jika tidak, penerjemah akan membuang waktu melihat ke objek yang disebutkan oleh dengan
pertama, untuk semua nama properti wajar tanpa pengecualian yang nantinya ditemukan di dalam dengan
blok.