1. Pernyataan cabang bersyarat : jika
Format Dasar:
if (<ekspresi 1>) {
<Kalimat Grup 1>
} lain jika (<ekspresi 2>) {
<Group Kalimat 2>
}kalau tidak{
<Kalimat Grup 3>
}
Proses eksekusi:
2. Pernyataan melingkar
2.1 Pernyataan Loop Pra-Tes: Mengevaluasi kondisi keluar sebelum kode dalam badan loop dieksekusi.
2.1.1 saat pernyataan
Format Dasar:
Mengerjakan {
<GROUP KAPEN>
} while (<presi>)
Proses eksekusi:
2.1.2 untuk pernyataan
Format Dasar:
untuk (<ekspresi awal>; <ekspresi kondisional>; <variable ekspresi>) {
<GROUP KAPEN>
}
Proses eksekusi:
2.2 Pernyataan Loop Uji: Kondisi keluar akan diuji hanya setelah kode di badan loop dieksekusi.
2.2.1. pernyataan do-while
Format Dasar:
Mengerjakan {
<GROUP KAPEN>
} while (<presi>);
Proses eksekusi:
3. Pernyataan berulang yang akurat : for-in
Format Dasar:
untuk (properti di objek) {
<GROUP KAPEN>
}
Fungsi: Ulangi semua properti dari objek yang ditentukan, yang dapat digunakan untuk menghitung sifat objek.
contoh:
Salinan kode adalah sebagai berikut:
<Html>
<body>
<p> Klik tombol di bawah ini untuk mengulangi properti "orang" objek. </p>
<tombol OnClick = "myfunction ()"> Klik di sini </tombol>
<p id = "demo"> </p>
<script>
fungsi myfunction ()
{
var x;
var txt = "";
var person = {fname: "bill", lname: "gates", usia: 56};
untuk (x secara langsung)
{
txt = txt + orang [x];
}
document.geteLementById ("demo"). innerHtml = txt;
}
</script>
</body>
</html>
Jika objek yang akan diwakili adalah nol atau tidak terdefinisi, badan loop tidak akan lagi dieksekusi, atau kesalahan akan dilemparkan. Oleh karena itu, saat mengeksekusi loop For-in, Anda harus terlebih dahulu memeriksa apakah nilai properti dari objek yang diubah adalah nol atau tidak terdefinisi.
4. Pernyataan lable
Sintaks Dasar:
Label: <grup kalimat>
Misalnya: Mulai: untuk (var i = 0; i <10; i ++) {
waspada (i);
}
Berikan contoh untuk menggambarkan fungsi pernyataan lable:
Unplugged:
Salinan kode adalah sebagai berikut:
var num = 0;
untuk (var i = 0; i <10; i ++) {
untuk (var j = 0; j <10; j ++) {
if (i == 5 && j == 5) {
merusak;
}
num ++;
}
}
peringatan (num); // 95
Bergabunglah dengan Lable:
Salinan kode adalah sebagai berikut:
var num = 0;
mendapat lebih banyak angka dr:
untuk (var i = 0; i <10; i ++) {
untuk (var j = 0; j <10; j ++) {
if (i == 5 && j == 5) {
Break Outpoint;
}
num ++;
}
}
peringatan (num); // 55
Contoh pertama output 95 tidak sulit untuk dipahami. Mengapa output 55 Dalam contoh kedua adalah karena ketika mengeksekusi Break Outpoint, ia melompat ke lapisan Putpoint dan mengeksekusi pernyataan peringatan.
Jika Anda mengubah contoh kedua menjadi berikut:
Salinan kode adalah sebagai berikut:
var num = 0;
untuk (var i = 0; i <10; i ++) {
mendapat lebih banyak angka dr:
untuk (var j = 0; j <10; j ++) {
if (i == 5 && j == 5) {
Break Outpoint;
}
num ++;
}
};
peringatan (num); // 95
Hasil ini konsisten dengan hasil contoh pertama.
5. Break dan Lanjutkan Pernyataan
5.1 Pernyataan BREAK:
Salinan kode adalah sebagai berikut:
var num = 0;
untuk (var i = 1; i <10; i ++) {
if (i%5 == 0) {
merusak;
}
num ++;
};
peringatan (num); // 4
Setelah pernyataan break dieksekusi, lompat ke pernyataan peringatan
5.2 Lanjutkan Pernyataan:
Salinan kode adalah sebagai berikut:
var num = 0;
untuk (var i = 1; i <10; i ++) {
if (i%5 == 0) {
melanjutkan;
}
num ++;
};
peringatan (num); // 8
Setelah pernyataan melanjutkan dieksekusi, lompat ke loop untuk () dan terus menjalankan loop sampai kondisi loop tidak benar.
6. dengan pernyataan
Sintaks Dasar:
dengan (objek) {
pernyataan
}
Berikan contoh:
Menulis tanpa menggunakan:
Salinan kode adalah sebagai berikut:
var qs = location.search.substring (1);
var hostname = location.hostname;
var url = location.href;
Peringatan (QS);
waspada (nama host);
waspada (url);
Gunakan dengan metode menulis:
Salinan kode adalah sebagai berikut:
dengan (lokasi) {
var qs = search.substring (1);
var hostname = nama host;
var url = href;
}
Peringatan (QS);
waspada (nama host);
waspada (url);
Dari contoh di atas, kita dapat melihat bahwa tujuan dari pernyataan dengan adalah untuk mengatur ruang lingkup kode ke dalam objek tertentu dan mengurangi input berulang.
Namun, penerjemah JS perlu memeriksa apakah variabel dalam blok dengan objek yang terkandung dalam blok dengan, yang akan sangat mengurangi kecepatan eksekusi dengan pernyataan dengan dan menyulitkan pernyataan JS untuk dioptimalkan.
Oleh karena itu, tidak disarankan untuk digunakan dengan pernyataan dalam skala besar.
Pernyataan SWE
Sintaks Dasar:
switch (<presi>) {
Case <Value 1>: <Group Pernyataan 1>
merusak;
Case <Value 2>: <Group Pernyataan 2>
merusak;
...
default <pernyataan grup>
}
Proses eksekusi:
Pernyataan sakelar dapat berupa tipe data apa pun, dan nilai setiap kasus mungkin bukan konstan, tetapi juga mungkin variabel, ekspresi, dll., Misalnya:
Salinan kode adalah sebagai berikut:
Switch ("Hello World") {
kasus "halo" + "dunia":
waspada ("ucapan ditemukan.");
merusak;
kasus "selamat tinggal":
waspada ("penutupan ditemukan.");
merusak;
bawaan:
waspada ("Pesan tak terduga ditemukan.");
}
Salinan kode adalah sebagai berikut:
var num = 25;
Switch (true) {
case num <0:
waspada ("kurang dari 0.");
merusak;
case num> = 0 && num <= 10:
peringatan ("Antara 0 dan 10.");
merusak;
case num> 10 && num <= 20:
peringatan ("Antara 10 dan 20.");
merusak;
bawaan:
peringatan ("lebih dari 20.");
}
Pernyataan sakelar menggunakan perbandingan operator kongruen saat membandingkan, jadi tidak ada konversi jenis yang terjadi.
praktik:
Salinan kode adalah sebagai berikut:
<type skrip = "Teks/JavaScript">
var count = 10;
untuk (var i = 0; i <count; i ++) {
waspada (i);
}
waspada (i); // output apa?
</script>
untuk(;;){
Peringatan ("2"); // Berapa kali 2 output?
}
Di atas adalah seluruh konten artikel ini, dan saya harap ini akan membantu teman -teman saya.