Notasi pendek js jika. Fungsi dan ketentuan JavaScript if-else

Instruksi kontrol adalah instruksi yang memungkinkan Anda untuk mengontrol eksekusi kode program. Biasanya, kode yang dapat dieksekusi dalam instruksi kontrol disebut sebagai badan instruksi itu.

Instruksi kontrol dapat disarangkan atau digunakan di dalam instruksi kontrol lainnya.

Pernyataan bersyarat

Secara default, interpreter JavaScript mengeksekusi instruksi satu demi satu dalam urutan kemunculannya Kode sumber... Dalam kasus di mana eksekusi atau non-eksekusi dari beberapa instruksi harus bergantung pada pemenuhan atau tidak terpenuhinya kondisi tertentu, pernyataan bersyarat digunakan.

Jika pernyataan

Pernyataan if memiliki dua bentuk. Sintaks untuk bentuk pertama adalah:

Ekspresi dalam tanda kurung disebut syarat terpenuhi if pernyataan atau kondisional secara singkat. Nilai ekspresi dievaluasi terlebih dahulu. Nilai yang dihasilkan, jika perlu, secara implisit dikonversi ke tipe boolean. Jika ekspresi bernilai benar, maka pernyataan akan dieksekusi. Jika ekspresi mengembalikan false, maka pernyataan tidak dieksekusi:

If (benar) alert ("Selesai!"); if (false) alert("Tidak akan dieksekusi!");

Sintaks if memungkinkan Anda untuk mengeksekusi hanya satu pernyataan, tetapi jika Anda perlu menjalankan lebih dari satu pernyataan, Anda perlu menggunakan pernyataan majemuk:

If (true) (var str = "Halo!"; Alert (str);)

Sintaks untuk bentuk kedua adalah:

Jika (ekspresi) pernyataan; pernyataan lain;

Kata kunci else memungkinkan Anda untuk menambahkan pernyataan yang akan dieksekusi jika kondisinya salah:

If (false) alert("Tidak akan dieksekusi"); peringatan lain ("Jalankan");

Seperti yang telah disebutkan, instruksi kontrol dapat disarangkan, yang memungkinkan Anda membuat konstruksi berikut:

Nomor var = 2; if (num == 1) (alert ("num value:" + num);) else if (num == 2) (alert ("num value:" + num);) else (alert ("Saya tidak tahu nomor seperti itu! ");)

Tidak ada yang istimewa dari kode ini. Ini hanyalah urutan pernyataan, di mana setiap pernyataan if adalah bagian dari pernyataan if sebelumnya. Sepintas, bentuk notasi ini mungkin tidak tampak sepenuhnya jelas, jadi mari kita pertimbangkan bentuk yang setara secara sintaksis yang menunjukkan kumpulan pernyataan if:

Nomor var = 2; if (num == 1) (alert ("num value:" + num);) else (if (num == 2) (alert ("num value:" + num);) else (alert ("Saya tidak' tidak tahu angka ini! ");))

Reg.ru: domain dan hosting

Pendaftar dan penyedia hosting terbesar di Rusia.

Lebih dari 2 juta nama domain dalam layanan.

Promosi, email untuk domain, solusi bisnis.

Lebih dari 700 ribu pelanggan di seluruh dunia telah membuat pilihan mereka.

Kerangka kerja bootstrap: tata letak responsif cepat

Video tutorial langkah demi langkah tentang dasar-dasar tata letak responsif dalam kerangka Bootstrap.

Belajar mengeset dengan mudah, cepat dan efisien menggunakan alat yang ampuh dan praktis.

Tata letak untuk memesan dan mendapatkan bayaran.

* Arahkan mouse Anda untuk menjeda pengguliran.

Mundur ke depan

Fungsi dan ketentuan if-else JavaScript

Seringkali, saat menggunakan JavaScript, menjadi perlu untuk melakukan tindakan yang berbeda ketika kondisi yang berbeda terpenuhi.

Misalnya, Anda menulis skrip yang memeriksa browser mana yang digunakan pengunjung saat mengunjungi situs Anda. Jika ini Internet Explorer, halaman yang dirancang khusus untuk IE harus dimuat, jika itu adalah browser lain - versi lain dari halaman ini harus dimuat.

Sintaks umum untuk konstruksi if-else adalah sebagai berikut:

If (kondisi) (aksi) lain (aksi2);

Sebagai contoh, perhatikan kode berikut:

If (browser == "MSIE") (alert ("Anda menggunakan IE")) else (alert ("Anda tidak menggunakan IE"));

Perhatikan bahwa semua huruf kecil digunakan. Jika Anda menulis "JIKA", kesalahan akan terjadi.

Perhatikan juga bahwa perbandingan menggunakan tanda sama dengan ganda (==).

Jika kita menulis browser = "MSIE" maka kami hanya menetapkan nilainya MSIE variabel bernama peramban.

Saat kita menulis browser == "MSIE", lalu JavaScript "memahami" bahwa kita ingin membandingkan, bukan menetapkan nilai.

Kondisi yang lebih kompleks jika dapat dibuat hanya dengan menambahkannya, misalnya, ke bagian lain konstruksi yang sudah ada jika-lain:

If (kondisi) (action1) else (if (kondisi lain) (action2) else (action3););

Sebagai contoh:

If (browser == "MSIE") (alert ("Anda menggunakan IE")) else (if (browser == "Netscape") (alert ("You are using Firefox")) else (alert ("Anda menggunakan peramban tak dikenal: ) ")); );

Operator logika AND, OR dan NOT

Untuk penggunaan struktur yang lebih fleksibel jika-lain yang disebut operator logika dapat digunakan.

Dan ditulis sebagai && dan digunakan dalam kasus di mana Anda perlu memeriksa kebenaran lebih dari satu kondisi.

Misalnya: Jika ada telur di lemari es dan bacon di lemari es, maka kita bisa makan telur dan bacon.

Sintaksnya adalah sebagai berikut:

If (kondisi1 && kondisi2) (tindakan) if (jam == 12 && menit == 0) (peringatan ("Siang!"));

Atau ditulis sebagai || dan digunakan ketika kita ingin memeriksa kebenaran setidaknya satu dari dua atau lebih kondisi. (Anda bisa mendapatkan || dengan menahan tombol shift dan tombol \)

Sebagai contoh: Jika ada susu di dalam lemari es, atau jika ada air di dalam lemari es, maka kita memiliki sesuatu untuk diminum.

Sintaksnya adalah sebagai berikut:

If (kondisi1 || kondisi2) (tindakan) if (jam == 11 || jam == 10) (peringatan ("Siang belum datang!"));

Bukan ditulis sebagai ! dan digunakan untuk penolakan.

Misalnya: Jika tidak ada telur di lemari es atau tidak ada bacon, maka kita tidak bisa makan telur atau bacon.

Sintaksnya adalah:

If (! (Kondisi)) (tindakan) if (! (Jam == 11)) (waspada ("Ini bukan jam 11"));

Fungsi dalam JavaScript

Alih-alih hanya menambahkan Javascript ke halaman sehingga browser akan mengeksekusi kode saat membukanya, Anda dapat membuat skrip dijalankan hanya ketika suatu peristiwa terjadi.

Misalnya, Anda telah membuat JavaScript yang tugasnya berubah warna latar belakang halaman saat mengklik tombol tertentu. Dalam hal ini, Anda perlu "memberi tahu" browser bahwa skrip ini tidak boleh dijalankan hanya karena antrian telah mencapainya.

Untuk mencegah browser mengeksekusi skrip saat dimuat, Anda perlu menulis skrip sebagai fungsi.

Dalam hal ini, kode JavaScript tidak akan dieksekusi sampai kita "memintanya" dengan cara khusus.

Lihatlah contoh skrip yang ditulis sebagai fungsi:



Klik tombol untuk melihat apa yang dilakukan skrip:

Jika garis waspada ("Selamat datang!"); tidak ditulis di dalam suatu fungsi, maka itu akan dieksekusi setiap kali browser mencapai baris ini. Tetapi karena kami menulisnya di dalam suatu fungsi, baris ini tidak dieksekusi sampai kami menekan tombol.

Panggilan fungsi (yaitu akses ke sana) terjadi di baris ini:

Seperti yang Anda lihat, kami telah menempatkan tombol pada formulir dan menambahkan sebuah acara onClick = "fungsi saya ()" untuk tombol.

Dalam pelajaran mendatang, kita akan melihat jenis kejadian lain yang memicu fungsi.

Sintaks umum untuk fungsi adalah sebagai berikut:

Nama fungsi fungsi (variabel1, variabel2, ..., variabelN) (// Isi fungsi ada di sini, tindakan yang dilakukannya)

kawat gigi: { dan } menunjukkan awal dan akhir suatu fungsi.

Kesalahan umum saat membuat fungsi adalah kecerobohan dan mengabaikan pentingnya kasus. Kata fungsi harus tepat fungsi... Pilihan Fungsi atau FUNGSI akan melempar kesalahan.

Juga, menggunakan huruf kapital berperan dalam menentukan nama variabel. Jika Anda memiliki fungsi bernama fungsi saya (), maka upaya untuk merujuk padanya sebagai Fungsi saya (), FUNGSI SAYA () atau Fungsi Saya () akan melempar kesalahan.

Apakah Anda menyukai materi dan ingin mengucapkan terima kasih?
Cukup bagikan dengan teman dan kolega Anda!


Lihat juga:

var a = 10; var b = (a> 1)? 100: 200; waspada (b);

Jika kondisi a> 1 benar, maka variabel B menetapkan nilai 100 , jika tidak, variabel b diberi nilai 200 .

Tugas Js 3_4. Kode pelengkap: mendeklarasikan 3 variabel lokal menggunakan kata kunci var. Hal ini diperlukan untuk menetapkan nilai operator ternary berikut ke variabel max: jika a lebih besar dari b, maka kita kembalikan a, jika tidak kita kembalikan b.
Potongan kode:

jika (a * b< 6) { result = "Мало"; } else { result = "Много"; }


Pertanyaan untuk pengendalian diri:

  1. Apa sintaks untuk operator ternary?
  2. Berapa banyak argumen yang dimiliki operator ternary?

Ganti operator di javaScript - alihkan

Pernyataan sakelar javascript digunakan untuk menguji variabel untuk beberapa nilai:

Sintaksis:

switch (variabel atau ekspresi) (opsi case 1: //.. statement block .. break case option 2: //.. statement block .. break default: //.. statement block ..)

Nilai variabel atau ekspresi diperiksa: di masing-masing kasus salah satu nilai diperiksa, dalam kasus nilai yang sesuai, satu atau beberapa blok pernyataan yang sesuai dengan yang diberikan dieksekusi kasus.

Blok yang dimulai dengan default kata layanan dapat dihilangkan. Pernyataan blok akan dieksekusi jika tidak ada nilai yang terdaftar di semua kasus tidak muat.

Penting: Pernyataan break diperlukan setelah setiap nilai variabel yang dipertimbangkan (setelah setiap kasus); jika Anda tidak menggunakannya, maka semua operator yang berada di bawah akan ditampilkan

Bandingkan dengan operator JIKA:

var a = 2; switch (a) (case 0: // if (a === 0) case 1: // if (a === 0) alert ("Nol atau satu"); // lalu output ... break; case 2: // if (a === 2) alert ("Dua"); // lalu tampilkan ... break; default: // else alert ("Banyak"); // jika tidak tampilkan ...)

Bagaimana cara mengelompokkan beberapa opsi?

Untuk menjalankan operator yang sama, dimungkinkan untuk mengelompokkan beberapa kasus... Seperti pada contoh di atas:

Kasus 0: kasus 1: waspada ("Nol atau satu"); merusak; ...

Untuk a = 0 dan a = 1, pernyataan yang sama dijalankan: alert("Zero or one");

Contoh 4: Minta pengguna untuk memasukkan warna. Keluaran terjemahan ke bahasa Inggris warna yang dimasukkan. Untuk warna "biru" dan "biru" mengembalikan nilai yang sama.


Solusi:
  • Buat halaman web dengan kerangka dan tag html naskah.
  • Inisialisasi variabel warna
  • var color = prompt("Warna apa?");

    var color = prompt("Warna apa?");

  • Periksa nilai variabel menggunakan konstruk swith, menghasilkan untuk setiap nilai - terjemahan yang sesuai:
  • switch (warna) (case "red": alert ("red"); break; case "green": alert ("green"); break; // ...

    Jika variabel warna memiliki nilai "merah", lalu tampilkan terjemahan di jendela modal - "merah" dan keluar dari konstruksi (break;). Jika variabel warna memiliki nilai "hijau", lalu tampilkan terjemahan di jendela modal - "hijau" dan keluar dari konstruksi (break;).

  • Untuk bunga "biru" dan "biru" lakukan pengelompokan:
  • // ... case "blue": case "blue": alert("blue"); merusak; // ...

    Jika variabel warna berwarna biru atau variabel warna memiliki nilai "biru", lalu tampilkan terjemahan di jendela modal - "biru" dan keluar dari konstruksi (break;).

  • Atur output untuk warna-warna yang tidak disediakan oleh program:
  • // ... default: waspada ( "kami tidak memiliki informasi tentang warna ini")) // sakelar akhir

    // ... default: alert ("y kami tidak memiliki informasi tentang warna ini")) // end switch

  • Uji skrip di browser.

Js tugas 3_6. Temukan dan perbaiki kesalahan dalam cuplikan kode berikut:

14 15 16 17 var nomor = prompt ( "Masukkan angka 1 atau 2"); switch (angka) (case "1" (document.write ("One");); break; case "2" (document.write ("Dua");); break; default (document.write ( "Anda memasukkan nilai selain 1 dan 2") ; } ; }

var number = prompt("Masukkan angka 1 atau 2 :"); switch (angka) (case "1" (document.write ("One");); break; case "2" (document.write ("Dua");); break; default (document.write ("Anda memasukkan nilai selain 1 dan 2 "););)


Js tugas 3_7. Apa yang akan ditampilkan di layar ketika kode berikut dijalankan?:

1 2 3 4 5 6 7 8 9 10 11 12 13 nilai var = "2"; switch (nilai) (case "1": case "2": case "3": document.write ("Halo"); break; case "4": case "5": document.write ("Dunia"); default: document.write ("Kesalahan");)

nilai var = "2"; switch (nilai) (case "1": case "2": case "3": document.write ("Halo"); break; case "4": case "5": document.write ("Dunia"); default: document.write ("Kesalahan");)


Tugas Js 3_8. Pengguna akan diminta untuk nomor - jumlah burung gagak di cabang. Tergantung pada nomor yang dimasukkan (tidak lebih dari 10), tampilkan pesan: - Duduk di cabang 1 gagak- Duduk di cabang 4 gagak- Duduk di cabang 10 gagak

  1. Bergantung pada nomor yang dimasukkan, akhiran kata berubah "Burung gagak".
  2. Untuk memeriksa, gunakan pernyataan Switch javascript.
  3. Simpan halaman ini di folder hasil (akan berguna untuk pekerjaan lebih lanjut).


Pertanyaan untuk pengendalian diri:

  1. Dalam hal apa disarankan sebagai operator bersyarat gunakan konstruksi mengalihkan?
  2. Untuk apa blok default dalam pernyataan? mengalihkan?
  3. Apakah wajib menggunakan pernyataan break dalam konstruksi? mengalihkan?
  4. Bagaimana pengelompokan dilakukan untuk beberapa opsi nilai di operator mengalihkan?

Operator siklik dari bahasa javaScript - Untuk

Sintaksis:

for (nilai awal pencacah; kondisi; kenaikan pencacah) (//..blok pernyataan ..)

Penting: Sebuah loop dalam javascript for digunakan ketika diketahui sebelumnya berapa kali tindakan siklik harus diulang (berapa banyak iterasi yang dimiliki loop)

  • Sebagai nilai awal penghitung iterasi, ekspresi penugasan digunakan: misalnya, i = 0 - penghitung loop dimulai dari nol:
  • for (var i = 0; condition; counter increment) (//..blok pernyataan ..)

  • Sebagai kenaikan counter, langkah dimana counter harus meningkat ditunjukkan: misalnya, menunjukkan bahwa setiap iterasi dari loop akan disertai dengan kenaikannya sebesar 1 :
  • for (var i = 0; kondisi; i ++) (//..blok pernyataan ..)

  • Kondisi loop adalah nilai akhir dari counter: misalnya, i10 menghentikan loop:
  • untuk (var i = 0; i<10; i++) { //..блок операторов.. }

Mari kita lihat contoh penggunaan for loop dalam javascript:

Contoh 5: Cetak urutan angka 0 1 2 3 ... 9 , setiap digit pada baris baru. 0 1 2 ... 8 9


Solusi:
  • Untuk menampilkan urutan angka, kita akan menggunakan penghitung dari loop for, yang seharusnya mengubah nilainya dari 0 sebelum 9 sesuai dengan urutannya.
  • Oleh karena itu, untuk nilai awal penghitung siklus atur nilainya menjadi 0 ; sebagai kondisi siklus atur nilai akhir - ii = 9; langkah penghitung harus sama 1 (i ++) karena perbedaan antara anggota barisan adalah satu:
  • untuk (var i = 0; i<10; i++) { document.write(i+"
    "); }

    Dalam contoh, nilai penghitung loop ditampilkan di layar, karena kenaikan penghitung i ++, masing-masing, akan muncul di layar 0 1 2 3 ... 9 , dengan setiap digit pada baris baru (tag
    ).

  • Uji skrip di browser.

Js tugas 3_9. 1 sebelum 15 .

  1. Gunakan penghitung lingkaran sebagai urutan angka untuk.
  2. Untuk variabel penambah, gunakan pengidentifikasi variabel jumlah.

Potongan kode:

Untuk (var i = ...; ...; ...) (jumlah = jumlah + ...;) ...

Pernyataan keluar loop merusak dan melanjutkan di javascript. Operator keluar

Pernyataan break menginterupsi eksekusi seluruh badan loop, mis. keluar dari loop dalam javaScript.

Sementara pernyataan continue menginterupsi eksekusi iterasi loop saat ini, tetapi, pada saat yang sama, melanjutkan eksekusi loop dari iterasi berikutnya.

Mari kita pertimbangkan operasi pernyataan break dan continue menggunakan contoh:

Contoh: Dekonstruksi algoritme cuplikan kode. Apa yang akan ditampilkan?

Potongan kode:

1 2 3 4 5 6 untuk (var i = 0; i< 10 ; i++ ) { if (i== 4 ) continue ; document.write (i+ "
"); jika (i == 8) istirahat;)

untuk (var i = 0; i<10;i++) { if (i==4) continue; document.write(i+"
"); jika (i == 8) istirahat;)


Solusi:
  • Baris ketiga dari contoh berisi kondisi yang menyebabkan digit 4 tidak akan ditampilkan: operator melanjutkan akan pergi ke iterasi berikutnya dari loop tanpa menyelesaikan yang sekarang.
  • Pada baris 5, loop keluar, tetapi pada saat yang sama nomornya 8 akan ditampilkan, karena pernyataan keluaran muncul sebelum kondisi (di baris ke-4). Setelah bertemu merusak, interpreter akan mengakhiri siklus.
  • Itu. layar akan menunjukkan: 0 1 2 3 5 6 7 8 - setiap digit pada baris baru.

Tugas Js 3_10. Keluarkan jumlah semua bilangan bulat dari 1 sebelum 15 , tidak termasuk dari jumlah total 5 dan 7 .

Keluar dari pernyataan

Bahasa javasctipt menyediakan operator keluar dari kode program - operator keluar.
Paling sering, operator digunakan untuk menghilangkan kesalahan input pengguna.


Mari kita pertimbangkan sebuah contoh:

Contoh 6: Minta pengguna untuk memasukkan nomor. Jika tidak ada nomor yang dimasukkan, maka tampilkan pesan "Kamu butuh nomor!" dan menghentikan program.


Solusi:
  • Inisialisasi variabel nomor nilai yang dimasukkan oleh pengguna ke dalam modal:
  • var number = prompt("Masukkan angka");

  • Menggunakan fungsi parseInt untuk mengonversi string menjadi integer, periksa apakah nilai yang dimasukkan adalah angka:
  • angka = parseInt (angka); // akan mengembalikan NaN - bukan angka

    Jika tidak ada angka yang dimasukkan, fungsi akan mengembalikan nilai NaN (dari bahasa Inggris. bukan angka- bukan angka).

  • Periksa nilai variabel nomor menggunakan fungsi isNaN:
  • x = isNaN (angka); // akan mengembalikan true jika nilainya bukan numerik

    Fungsi IsNaN mengembalikan nilai benar jika variabelnya bukan angka

  • Oleh aturan "kebohongan" mengatur untuk memeriksa nilai variabel x... Jika nilainya bukan numerik, cetak catatan yang sesuai dan hentikan program:
  • if (x) (alert ("Diperlukan angka!"); exit; // keluar dari program)

  • Untuk melanjutkan program (jika nilai yang dimasukkan adalah angka), tampilkan jendela berikut dengan prompt input:
  • alert ("Masukkan angka kedua"); // jika Anda memasukkan non-angka, pernyataan tidak akan dieksekusi

  • Uji skrip di browser.

Pertanyaan untuk pengendalian diri:

  1. Sebutkan tiga parameter loop untuk dan menjelaskan tujuan mereka.
  2. Operator apa yang dimaksudkan untuk keluar dari loop dan menginterupsinya? Berikan contoh penggunaannya.
  3. Untuk apa operatornya? keluar?

Apakah mungkin untuk memiliki beberapa penghitung dalam satu FOR?

Pekerjaan yang menarik dengan for loop dimungkinkan dengan menggunakan secara bersamaan dua penghitung dalam satu siklus.
Mari kita pertimbangkan sebuah contoh:

Contoh 7: Dengan menggunakan skrip, cetak pasangan nilai-variabel berikut dalam tiga baris: i = 0 j = 2 i = 1 j = 3 i = 2 j = 4


Solusi:
  • Dalam loop for, atur dua penghitung: penghitung i untuk menampilkan urutan 0 1 2 , counter j untuk menampilkan urutan 2 3 4 :
  • 1 2 3 untuk (i = 0, j = 2; i< 10 , j< 5 ; i++, j++ ) { }

    untuk (i = 0, j = 2; i<10, j<5; i++, j++) { }

    Masing-masing dari tiga parameter loop for sekarang memiliki dua nilai, yang terdaftar dipisahkan koma(misalnya, parameter pertama dengan dua nilai: i = 0, j = 2). Parameter itu sendiri terdaftar titik koma dipisahkan(;).

  • Untuk output pada setiap baris, gunakan tag
    :
  • 1 2 3 4 untuk (i = 0, j = 2; i< 10 , j< 5 ; i++, j++ ) { document.write ("
    i = ", i," j = ", j);)

    untuk (i = 0, j = 2; i<10, j<5; i++, j++) { document.write("
    i = ", i," j = ", j);)

Pembuatan halaman on-the-fly: bagaimana?

Sebelum melakukan tugas berikutnya, perhatikan sebuah contoh. membangun halaman html secara dinamis menggunakan javascript.

Contoh 8:

  • Hal ini diperlukan untuk secara dinamis menghasilkan daftar berpoin dan bernomor pada halaman web tergantung pada data yang dimasukkan oleh pengguna: meminta pengguna untuk masuk tampilan daftar(bernomor (nomor 1) atau berlabel (nomor 2)), dan kemudian jumlah item daftar.
  • Bergantung pada jawabannya, tampilkan tag dari daftar berpoin atau bernomor dengan jumlah item yang diperlukan.
  • Jika jenis daftar yang tidak ada dimasukkan, maka tampilkan pesan "Silakan masukkan jenis yang benar!" dan keluar dari program().

Mari kita ingat tag:
tag daftar bernomor:

<lama> <li> <li> <li> </ ol>

tag daftar berpoin:

var listType = prompt ("Masukkan" 1 "untuk daftar berpoin", 2 "untuk daftar bernomor");

  • Periksa nilai yang dimasukkan: untuk daftar bernomor (nomor 1) keluarkan tag
      , untuk yang ditandai (nomor 2) - tag
        ... Jika nilai yang berbeda dimasukkan, cetak catatan dan akhiri program:

            ") else (alert (" Masukkan jenis yang benar "); keluar;)

          • Inisialisasi variabel kolvo nilai yang dimasukkan oleh pengguna ke dalam modal:
          • var kolvo = prompt("Masukkan jumlah item");

          • Untuk mengonversi nilai string menjadi nilai numerik, gunakan fungsi parseInt:
          • untuk (var i = 1; i<=kolvo; i++) document.write("");

          • Karena daftar ditutup dengan tag yang sesuai, tergantung pada jenis daftar, cetak tag penutup:
          • if (listType == "1") document.write ("") else if (listType =" 2 ") document.write ("" ) ;

            if (listType == "1") document.write ("

        ") else if (listType =" 2 ") document.write ("
      ");

    1. Uji skrip di browser.
    2. Tugas Js 3_11.
      Tulis skrip yang menampilkan tag memasukkan(kontrol) dari berbagai jenis, tergantung pada digit yang dimasukkan:

      1 - bidang teks,
      2 - tombol,
      3 - radio(mengalihkan).

      Jumlah tag yang ditampilkan juga harus diminta.

      Mari kita ingat tag:

      Untuk 1 - bidang teks: Untuk 2 - tombol: Untuk 3 - radio:

      Contoh keluaran:

      Tugas Js 3_12. Gambarlah sebuah kotak-kotak 9x9 menggunakan javascript untuk loop. "Gambar" papan harus berupa tag html untuk tabel:

      Mari kita ingat tag:

      <batas tabel = "1" lebar = "30%"> <tr> <td>-</ td> -</ td> </ tr> </ meja>

      --

      • Untuk menggambar 9 garis, Anda perlu mengatur loop for eksternal dengan penghitung i.
      • Untuk menggambar 9 sel di setiap baris, Anda perlu mengatur loop for dalam (bersarang) dengan penghitung j.
      • Gunakan metode document.write untuk merender tag sel dan baris.

      Hasil:

      Selain itu:

      1. Cetak tabel perkalian ke dalam sel tabel menggunakan penghitung loop (i dan j).
      2. Tampilkan baris pertama dan kolom pertama dengan latar belakang merah (atribut sel tabel bgcolor):
        <td bgcolor = "merah">-</ td>

        -

      Hasil:


      Pertanyaan untuk pengendalian diri:

      1. Jelaskan apa yang dimaksud dengan pembuatan halaman dinamis?
      2. Apa konstruksi bahasa yang paling umum digunakan untuk pembuatan halaman dinamis?

      Pernyataan siklik dari bahasa javaScript - While

      Sintaks untuk pernyataan while adalah:

      while (kondisi) (//..blok pernyataan ..);

      Contoh: Tampilkan kekuatan dua hingga 1000 (2, 4, 8 ... 512). Gunakan metode peringatan ()


      Solusi:
      • Daftar skrip:
      • 1 2 3 4 5 var a = 1; sementara (a< 1000 ) { a*= 2 ; alert(a) ; }

        var a = 1; sementara (a< 1000){ a*=2; alert(a); }

        a * = 2 → operasi penugasan gabungan digunakan: produk yang digabungkan dengan penugasan, mis. sama dengan a = a * 2

      • Uji hasilnya di browser.

      Bagaimana cara kerja pernyataan break dan continue dalam perulangan while?

      Contoh:

      var a = 1; sementara (a< 1000 ) { a*= 2 ; if (a== 64 ) continue ; if (a== 256 ) break ; alert(a) ; }

      var a = 1; sementara (a< 1000){ a*=2; if (a==64) continue; if (a==256) break; alert(a); }

      Kekuatan dua akan menjadi output untuk 128 inklusif, dan nilai 64 akan dilewati. Itu. di kotak dialog kita akan melihat: 2 4 8 16 32 128

      Tugas Js 3_13. Nilai apa yang akan ditampilkan cuplikan kode berikut?

      var penghitung = 5; sementara (kontra< 10) { counter++; document.write("Counter " + counter); break; document.write("Эта строка не выполнится."); }


      Tugas Js 3_14. Tulis kode ereksi NS ke derajat kamu menggunakan perulangan while. Nilai variabel kueri dan keluarkan hasilnya menggunakan alert().

      Lengkapi kode:

      1 2 3 4 5 6 7 8 9 varx = ...; var y = ...; penghitung = 1; chislo = x; while (...) (chislo = x * ...; counter = ...;) alert (chislo);

      varx = ...; var y = ...; penghitung = 1; chislo = x; while (...) (chislo = x * ...; counter = ...;) alert (chislo);

      A Perbaiki kesalahan dalam program yang dirancang untuk mencari faktorial suatu bilangan:

      1 2 3 4 5 6 7 8 9 10 11 12 13 var counter = prompt("Masukkan angka"); var faktorial = 1; dokumen. tulis ( "Faktoral bilangan:"+ penghitung + "! ="); do (jika (penghitung == 0) (faktorial = 1; break;) faktorial = faktorial / penghitung; penghitung = penghitung + 1;) while (penghitung> 0); document.write (faktorial);

      var counter = prompt("Masukkan angka"); var faktorial = 1; document.write("Angka faktorial:" + penghitung + "! ="); do (jika (penghitung == 0) (faktorial = 1; break;) faktorial = faktorial / penghitung; penghitung = penghitung + 1;) while (penghitung> 0); document.write (faktorial);


      Tugas Js 3_16. Ubah program untuk input pengguna:

      Minta nama pengguna sampai pengguna benar-benar memasukkan nama (yaitu bidang benar-benar diisi dan tombol batal tidak ditekan). Ketika nama dimasukkan, maka output "Halo nama!"... dokumen.

      Bagaimana menemukan kesalahan dalam javascript?

      Dalam beberapa kasus, kode pada halaman tidak berfungsi karena alasan tertentu. Di mana mencari kesalahan? Dalam kasus seperti itu, Anda dapat menggunakan pernyataan try..catch.

      Pernyataan try..catch mencoba mengeksekusi sepotong kode, dan jika ada kesalahan dalam kode, dimungkinkan untuk menampilkan kesalahan di layar.
      Kesalahan disimpan dalam objek e.message.

      Mari kita pertimbangkan pekerjaan operator menggunakan contoh:

      Contoh: menulis pernyataan dengan kesalahan dalam program. Periksa kesalahan dalam kode yang diduga salah: jika ada kesalahan dalam kode, tampilkan pesan "penanganan kesalahan: nama kesalahan"... Setelah memeriksa operator yang salah, terlepas dari apakah ada kesalahan dalam kode, keluarkan pesan "menyelesaikan tindakan"


      Solusi:
      • Sebagai pesan dengan kesalahan, kami akan menggunakan metode prompt (), ditulis dengan kesalahan - cepat ()... Lampirkan pesan kesalahan di blok coba:
      • waspada ("sebelum"); try (promt ("masukkan angka"); // operator dengan kesalahan)

        Coba dari bahasa Inggris. - "coba", dengan demikian, kami meletakkan pernyataan coba di depan fragmen kode yang mungkin mengandung kesalahan (dalam kasus kami, memang ada kesalahan).

      • Pesan kesalahan harus ditempatkan di blok tangkap:
      • 6 7 8 9 tangkap (e) (waspada ( "penanganan kesalahan:"+ e.pesan); )

        catch (e) (alert ("penanganan kesalahan:" + e.message);)

        Jika memang ada kesalahan, maka pernyataan catch menyimpan kesalahan ini di objek e. Nanti bisa ditampilkan di kotak dialog e.message.

      • Tempatkan pesan terakhir, yang harus ditampilkan terlepas dari apakah ada kesalahan dalam kode, di blok akhirnya:
      • akhirnya (alert ("menyelesaikan tindakan");) alert ("setelah");

        Jika ada kesalahan, maka penerjemah, setelah menampilkannya dalam contoh kita, akan melanjutkan untuk mengeksekusi blok tangkap, dan akhirnya (dari bahasa Inggris "penyelesaian", "akhirnya"), yang akan selalu dieksekusi, terlepas dari apakah ada kesalahan atau tidak. Bahkan jika ada kesalahan di blok tangkap.

      Penting: Blok akhirnya adalah opsional dalam konstruksi.


      Tugas Js 3_17. Ikuti contoh di atas dengan modifikasi berikut:

    3. Hapus blok terakhir dan lihat kodenya berjalan.
    4. Ganti operator yang salah dengan yang bebas kesalahan dan lihat hasilnya.
    5. Ringkasan:

      Dalam pelajaran, operator dan konstruksi bahasa javascript berikut dipertimbangkan:

      Pernyataan bersyarat Javascript:

    6. Jika pernyataan
    7. Penetapan bersyarat (operator ternary)
    8. Ganti pernyataan
    9. Operator lingkaran:

    10. Untuk lingkaran
    11. loop sementara
    12. Perulangan do ... while
    13. Untuk ... dalam lingkaran
    14. Tugas akhir Js 3_18.
      Buat game untuk dua orang:

      1. Program meminta pemain pertama untuk memasukkan nomor dari 1 sebelum 100 (pemain kedua tidak melihat nomor yang dimasukkan). Kemudian pemain kedua diminta untuk menebak angka yang dimasukkan. Pesan ditampilkan sebagai tanggapan "sedikit" atau "banyak" tergantung pada jawaban yang dimasukkan. Jika pemain menebak dengan benar, ucapan selamat akan ditampilkan. Jika tebakannya salah, permainan berlanjut (sampai angka yang benar-benar ditebak).
      2. Hitung jumlah percobaan dan kembalikan hasilnya ketika angkanya ditebak.


      Pertanyaan untuk pengendalian diri:

      1. Kapan sebaiknya menggunakan perulangan For In? Apa contoh penggunaannya.
      2. Apa tujuan dari pernyataan try..catch?
      3. Jelaskan tujuan dari setiap blok pernyataan try..catch.

      Dalam kehidupan sehari-hari, seringkali perlu untuk mengambil beberapa jenis keputusan, tergantung pada beberapa kondisi. Misalnya, jika cuaca hangat di akhir pekan, maka kita akan pergi ke laut, sebaliknya, jika mendung, kita akan duduk di rumah.

      Ini juga sangat umum dalam pemrograman. Untuk ini ada dua pernyataan kondisional, ini adalah if-else dan switch-case... Pada artikel ini saya akan memberi tahu Anda tentang pernyataan if-else, dan pada artikel berikutnya tentang switch-case.

      Sintaks pernyataan kondisional if-else lanjut:


      Jika kondisi benar, maka kode dari blok if dieksekusi, sebaliknya jika kondisi salah, maka kode dari blok else dieksekusi.

      Untuk pemahaman yang lebih baik, mari kita ambil contoh sederhana, kita memiliki sejumlah uang dan kita ingin membeli mobil, dan di sini kondisi seperti itu segera muncul, jika kita memiliki cukup uang, maka kita dapat membeli mobil ini, jika tidak kita tidak bisa.

      Var uang = 35000; // Katakanlah kita punya 35.000 euro // Mobil yang ingin kita beli berharga 50.000 euro. Dan kondisi berikut terjadi jika (uang> 50.000) (document.write ("Kita bisa membeli mobil");) else (document.write ("Tidak cukup uang untuk membeli mobil");)

      Kami menyimpan dokumen, membukanya di browser dan melihat bahwa pesan berikut ditampilkan di halaman "Tidak cukup uang untuk membeli mobil". Jika kami memiliki lebih dari 50.000 euro, maka kode dari blok if akan dieksekusi. Jika kami memiliki tepat 50.000 euro, maka kami juga tidak akan dapat membeli mobil, karena 50.000 tidak lebih dari 50.000. Agar kondisinya benar dalam kasus ini, Anda perlu menulis tanda lebih besar dari atau sama dengan ( > =) ...

      Komentar! Operasi logika sama dengan ditulis dengan dua tanda sama dengan (==)... Ada juga operasi logika yang kurang dari atau sama dengan (

      menggunakan kurung kurawal

      Jika hanya ada satu operator, maka kurung kurawal adalah opsional, jika ada lebih dari satu operator di blok, maka kurung kurawal diperlukan.

      Contoh di atas akan bekerja dengan baik tanpa kurung kurawal, karena kedua blok hanya berisi satu pernyataan.

      Di dalam if, Anda dapat menulis operasi logika apa pun apakah mereka sederhana atau kompleks. Anda juga dapat menggunakan operator AND (&&) dan OR (||).

      Komentar! Kehadiran blok lain adalah opsional.

      Misalnya, jika a sama dengan b dan c sama dengan d, maka kami menampilkan pesan yang sesuai, sebaliknya jika tidak ada blok lain, maka kami hanya melangkah lebih jauh, ke baris berikutnya.

      Var a = 4, b = 4, c = 8, d = 8; if ((a == b) && (c == d)) document.write ("a sama dengan b DAN c sama dengan d"); document.write("Baris kode berikutnya");

      Pernyataan if - else if - else

      Setelah blok if, satu atau lebih blok if dapat mengikuti, dan pada akhirnya ada blok else. Ini berguna ketika Anda perlu menggunakan lebih dari satu kondisi.


      Untuk pemahaman yang lebih baik, mari kita ambil contoh dari kehidupan sehari-hari. Misalnya, kami memiliki sejumlah outlet. Jika kita hanya memiliki satu outlet di dalam ruangan, maka kita hanya dapat menghubungkan satu perangkat, jika ada dua soket, maka kita dapat menghubungkan dua perangkat, dan jika lebih banyak, maka kita dapat menghubungkan semua perangkat dari rumah ke jaringan listrik.

      Sekarang mari kita beralih ke pemrograman.

      Soket var = 2; // Jumlah soket di rumah jika (soket == 1) document.write ("

      Kami hanya dapat menghubungkan satu perangkat

      "); else if (soket == 2) (document.write ("

      Kami hanya dapat menghubungkan dua perangkat

      "); dokumen.tulis ("

      Misalnya TV dan laptop

      ");) lain (dokumen.tulis ("

      Kami dapat menghubungkan semua perangkat dari rumah ke jaringan listrik

      "); }

      Bergantung pada nilai variabel soket, blok kode ini atau itu akan dipicu. Seperti yang mungkin sudah Anda pahami, jika socket sama dengan 1, maka blok kode pertama akan berfungsi. Jika soket adalah 2, maka blok kode kedua akan menyala, dan jika soket memiliki nilai lain (bahkan angka negatif), maka blok kode ketiga akan menyala.

      Notasi disingkat jika lain

      Notasi yang disingkat dapat digunakan dalam kasus ketika, tergantung pada kondisi tertentu, suatu variabel dapat menerima satu atau nilai lain.


      Misalnya jika nilai variabel a lebih besar dari nilai variabel b, maka pada variabel x kita tuliskan pesan berikut, “Variabel a lebih besar dari variabel b”, sebaliknya kita tuliskan bahwa “ Variabel a lebih kecil dari variabel b".

      Var a = 50, b = 100, x; x = (a>b)? "

      Variabel a lagi variabel b

      " : "

      Variabel a lebih kecil variabel b

      "; // Cetak hasil hasil document.write(x);

      Itu saja yang ingin saya ceritakan kepada Anda di artikel ini. Operator bersyarat if-else digunakan lebih dari di setiap skrip, jadi sangat penting untuk mengetahui dan memahaminya. Dalam artikel berikutnya saya akan memberi tahu Anda tentang satu lagi pernyataan switch-case bersyarat.

      Dalam contoh ini, pertama-tama kita mendeklarasikan empat variabel menggunakan kata kunci var, dan segera menetapkan nilai numeriknya. Selanjutnya, menggunakan operator kenaikan dan penurunan, kami mengubah nilai angka. Informasi ditampilkan menggunakan fungsi Gema(lihat artikel ""). Agar tidak menulis nama objek sekali lagi, saya menggunakan konstruksi dengan ().

      Operator logika

      Operator logika digunakan saat memeriksa kondisi, agar tidak terulang, saya akan membuat singkatan: operan kiri adalah L.O., dan operan kanan adalah P.O.

      • && - Logis "DAN"
      • || - "ATAU"
      • ! - "BUKAN"
      • > - L.O. lebih banyak PO
      • > = - L.O. lebih besar dari atau sama dengan P.O.
      • < - Л.О. меньше П.О.
      • <= - Л.О. меньше или равен П.О.
      • == - L.O. sama dengan P.O.
      • ! = - L.O. tidak sama dengan P.O.
      • | = - L.O. sama dengan dirinya sendiri ATAU P.O.
      • & = - L.O. sama dengan diriku DAN P.O.
      • ^ = - EKSKLUSIF ATAU

      Sekarang, perhatikan skrip berikut:

      //***************************************** // operasi logika// logik_if_else.js //***************************************** var a = 10, b = 100, WshShell, judul, msg1, msg2, msg3, msg4, vbInformation = 64; // Buat sebuah instance dari kelas WScript.Shell WshShell = WScript.CreateObject("WScript.Shell"); judul = "Bekerja dengan pernyataan bersyarat IF ELSE JS"; dengan (WshShell) (jika (a> = 5 && a<= 100 ) //истина msg1 = "TRUE" ; else msg1 = "FALSE" ; Popup (msg1, 5 , title, vbInformation) ; if (a>= 5 || b == 100) // true msg2 = "TRUE"; lain msg2 = "SALAH"; Munculan (msg2, 5, judul, vbInformation); // pernyataan bersyarat js jika lain if (! a) // false msg3 = "TRUE"; lain msg3 = "SALAH"; Munculan (msg3, 5, judul, vbInformation); if (a & = 100) // false msg4 = "TRUE"; lain msg4 = "SALAH"; Munculan (msg4, 5, judul, vbInformation); )

      Seperti pada skrip sebelumnya, di sini saya menggunakan konstruksi dengan untuk mempersingkat kode program. Namun, untuk menampilkan informasi, kami menggunakan fungsi Muncul(lihat artikel ""). Akibatnya, kotak dialog akan menutup secara otomatis setelah beberapa detik. Harap dicatat bahwa dalam contoh ini kami tidak menggunakan kurung kurawal. dalam pernyataan js if bersyarat, mereka hanya relevan ketika Anda perlu mengeksekusi lebih dari satu baris kode, tetapi beberapa.

      Akhirnya, mari kita lihat contoh praktis seperti memecahkan persamaan kuadrat:

      // Memecahkan persamaan kuadrat// uravnenije_if_else.js // *********************************************************** var a, b, c, d, x, x1, x2; // Mendeklarasikan variabel a = - 2; b = 6; c = 20; // Mencari diskriminan d = Matematika .pow (b, 2) - 4 * a * c; if (d == 0) (x = b / (2 * a); msg = "Persamaan memiliki satu solusi, x tepat"+ x) else (if (d> 0) (x1 = (- b + Math .sqrt (d)) / (2 * a); x2 = (- b- Math .sqrt (d)) / (2 * a ); pesan = "Persamaan memiliki dua solusi \ n x1 tepat"+x1 + " \ n x2 persis "+ x2; // pernyataan kondisional if else js) else msg = "Tidak ada solusi"; ) WScript.Echo (pesan);