Bahasa Penskripan Klien

3.1 Bahasa Penskripan Klien
SAINS KOMPUTER • Tingkatan 5 • Bab 3: Pengaturcaraan Berasaskan Web

3.1 Bahasa Penskripan Klien

Bahasa penskripan klien ialah bahasa pengaturcaraan yang dilaksanakan pada komputer klien melalui pelayar web untuk memanipulasi serta memaparkan kandungan web secara interaktif dan dinamik tanpa perlu kerap membebankan pelayan.

Objektif Pembelajaran

  • Menerangkan keperluan bahasa penskripan klien dalam laman web.
  • Menterjemah atur cara mudah bahasa penskripan klien kepada carta alir bagi isihan buih, isihan pilih, carian perduaan, maksimum, minimum, min, bilangan dan giliran.
  • Menggunakan pemalar, pemboleh ubah, dan pelbagai jenis data dalam atur cara penskripan klien.
  • Menggunakan struktur kawalan jujukan, pilihan, dan ulangan dalam atur cara.
  • Menerangkan kelebihan serta menggunakan standard library seperti math.js dan date.js dalam bahasa penskripan klien.
  • Meringkaskan atur cara menggunakan prosedur dan fungsi.
  • Membina atur cara yang melibatkan penggunaan tatasusunan.
  • Menghasilkan atur cara interaktif berasaskan web yang mengandungi pengisytiharan data, struktur kawalan, subatur cara, dan tatasusunan.

Perbandingan Senibina Aliran Pelaksanaan Penskripan Klien lwn Penskripan Pelayan

Permohonan URL diproses antara pelayar web pengguna (klien) dan komputer hos (pelayan). Skrip klien dilaksanakan pada pelayar, manakala skrip pelayan dilaksanakan pada pelayan sebelum laman dihantar semula.

Aliran Permohonan URL: Klien dan Pelayan

Aliran permohonan URL antara klien dan pelayan Dua kotak besar bersebelahan. Kotak kiri ialah Pelayar Web Klien yang memproses HTML, CSS dan JavaScript. Kotak kanan ialah Pelayan Web dan Pangkalan Data. Lima langkah bernombor dihubungkan dengan anak panah: langkah 1 pengguna menghantar permohonan URL dari klien ke pelayan; langkah 2 pelayan memproses skrip pelayan dan berinteraksi dengan pangkalan data; langkah 3 pelayan menghantar laman HTML dan skrip klien kembali kepada klien; langkah 4 pelayar memuatkan HTML, CSS dan JavaScript; langkah 5 pelayar menterjemah dan memaparkan laman interaktif kepada pengguna. PELAYAR WEB KLIEN HTML + CSS + JavaScript Penterjemahan & paparan Pengesahan borang, kiraan segera PELAYAN WEB Penskripan pelayan (PHP/ASP) Pangkalan data Penghantaran laman HTML 1 3 Request URL HTML + skrip klien Langkah 4-5: Muat & papar Langkah 2: Proses skrip pelayan

Skrip klien diproses pada pelayar pengguna; skrip pelayan diproses pada komputer hos sebelum laman dihantar semula.

Penerangan Ringkas

Keperluan bahasa penskripan klien, algoritma asas, pemboleh ubah, struktur kawalan, pustaka piawai, subatur cara, tatasusunan dan laman interaktif.

Apakah bahasa penskripan klien?

Bahasa penskripan klien ialah bahasa pengaturcaraan yang dilaksanakan pada komputer klien melalui pelayar web untuk memanipulasi serta memaparkan kandungan web secara interaktif dan dinamik.

Gabungan HTML, CSS, dan JavaScript membolehkan pelbagai algoritma asas pemprosesan data dilaksanakan terus pada pelayar.

Konsep Pelanggan/Pelayan

Pelanggan (Klien) ialah pelayar web pengguna pada komputer atau peranti mudah alih yang menghantar permohonan.

Pelayan (Server) memproses permintaan, melaksanakan penskripan pelayan, dan menghantar laman web serta berinteraksi dengan pangkalan data.

Kaedah Penulisan JavaScript

Explicit embedding

Kod JavaScript ditulis secara terus di dalam fail HTML, di antara tag <script> dan </script>.

Implicit embedding

Kod JavaScript disimpan dalam fail luaran berekstensi .js dan dipanggil menggunakan atribut src.

Contoh
<script src="myScript.js"></script>

Laman Web Statik dan Dinamik

Perbezaan laman web statik dan dinamik
CiriStatikDinamik
PembinaanHTML sahajaPenskripan pelayan seperti PHP atau ASP
PaparanTerhad mengikut tag HTMLDipanggil dari pangkalan data atau interaksi pengguna
Kemas kiniManualAutomatik dan mudah
ContohLatar belakang organisasiKandungan yang berubah mengikut pengguna

Kelebihan dan Kekangan Bahasa Penskripan Klien

Kelebihan

  • Laman web menjadi lebih interaktif.
  • Pelaksanaan tugas pantas tanpa penglibatan pelayan, contohnya pengesahan borang dan kiraan shopping cart serta-merta.
  • Meningkatkan kebolehgunaan web bagi pelayar yang menyokong penskripan klien.
  • Membolehkan pembangun menentukan reka bentuk dan ciri-ciri web.

Kekangan

Tidak dapat melaksanakan tugas capaian terus kepada pangkalan data pelayan atau fail sistem pelayan.

Algoritma Asas Penskripan Klien

Isihan Buih (Bubble Sort)

Membandingkan dua unsur bersebelahan satu demi satu dan menukar kedudukan jika urutan salah. Turutan menaik: tukar jika unsur pertama > unsur kedua. Turutan menurun: tukar jika unsur pertama < unsur kedua. Sesuai untuk saiz data kecil dan tujuan pembelajaran.

Isihan Pilih (Selection Sort)

Mencari nilai terkecil atau terbesar daripada senarai dan menukar kedudukannya dengan unsur yang dirujuk. Turutan menaik: cari indeks terkecil min, bandingkan jika no[j] < no[min], kemudian tukar dengan no[i] jika min != i.

Carian Perduaan (Binary Search)

Memerlukan data yang telah diisih. Menentukan indeksTengah = Math.floor((indeksAkhir + indeksAwal) / 2). Jika nilai tengah sama dengan nilai carian, nilai dijumpai. Jika no[indeksTengah] > nilai carian, cari di separuh kiri. Jika no[indeksTengah] < nilai carian, cari di separuh kanan.

Maksimum, Minimum, Min dan Bilangan

Maksimum: nilai awal sangat rendah seperti -1; jika unsur > nilaiMaksimum, kemas kini nilai maksimum. Minimum: nilai awal sangat tinggi seperti 999; jika unsur < nilaiMinimum, kemas kini nilai minimum. Min: purata = jumlah / pembilang dengan akumulator jumlah = jumlah + no dan kaunter pembilang = pembilang + 1. Bilangan: pembilang = pembilang + 1.

Struktur Giliran (Queue)

Struktur giliran menggunakan konsep FIFO (First-In, First-Out). Operasi asas ialah enqueue (masuk) dan dequeue (keluar).

Kaedah dalam JavaScript:

  • Pasangan 1: push() masuk di belakang dan shift() keluar di depan.
  • Pasangan 2: unshift() masuk di depan dan pop() keluar di belakang.

Pemboleh Ubah, Pemalar dan Jenis Data

Pemboleh ubah dan pemalar

Pemboleh ubah diisytiharkan menggunakan kata kunci var.

Pemalar diisytiharkan menggunakan kata kunci const, contohnya nilai π = 3.142.

Jenis data asas

  • Nombor — integer atau perpuluhan, contoh 5, 100.50.
  • Rentetan / String — diapit tanda petik, contoh "Ali bin Abu".
  • Boolean — true atau false.

Struktur Kawalan

Jujukan

Pelaksanaan arahan satu demi satu mengikut urutan dari atas ke bawah tanpa syarat.

Pilihan

if melaksanakan blok jika syarat true. if...else melaksanakan satu blok jika true, blok lain jika false.

Operator hubungan: ==, !=, >, <, >=, <=.

Operator logik: && (AND), || (OR), ! (NOT).

Ulangan

Berasaskan pembilang: gelung for(nilai awal; syarat tamat; kemas kini).

Berasaskan syarat: gelung while menyemak syarat dahulu; gelung do...while melaksanakan blok sekurang-kurangnya sekali sebelum syarat disemak.

Kawalan gelung: break memberhentikan gelung serta-merta; continue melangkau baki lelaran semasa.

Standard Library

Standard library ialah koleksi fungsi atau kaedah sedia ada yang ditakrifkan dalam spesifikasi bahasa untuk memudahkan pengaturcaraan. Kelebihannya: boleh digunakan tanpa perlu tahu cara pelaksanaannya, boleh diguna berulang kali, dan menjimatkan masa pembangunan.

math.js

Memuatkan fungsi matematik seperti math.sqrt(x), math.pow(x, y), math.add(x, y), math.subtract(x, y), math.divide(x, y), math.cube(x), dan math.sort(x).

date.js

Memuatkan fungsi tarikh seperti Date.today(), Date.parse('today'), dan Date.today().add().days().

Pustaka boleh dimasukkan melalui fail tempatan <script src="math.js"></script> atau pautan CDN pelayan web.

Prosedur dan Fungsi

Prosedur

Melaksanakan tugas tanpa memulangkan sebarang nilai ke pemanggil; hanya memaparkan output secara terus.

Fungsi

Memproses data dan memulangkan nilai menggunakan kata kunci return.

Parameter

Parameter sebenar ialah nilai atau pemboleh ubah yang dihantar semasa memanggil subatur cara. Parameter rasmi ialah pemboleh ubah dalam takrifan subatur cara yang menerima nilai yang dihantar.

Tatasusunan (Array)

Tatasusunan menyimpan senarai elemen dalam satu nama pemboleh ubah tunggal. Indeks berasaskan sifar, bermula dari indeks 0 hingga n-1.

Pengisytiharan: var no = [5, 1, 4, 12, 8]; atau var no = [];. Tatasusunan boleh dimanipulasi menggunakan gelung for untuk proses carian, pengisihan, dan penjumlahan.

Membina Laman Web Interaktif

Butang interaktif

Tag HTML <button onclick="namaFungsi()">Label</button> membolehkan pengguna mencetuskan peristiwa untuk melaksanakan kod JavaScript.

Borang HTML

Tag <form> bersama komponen input seperti <input type="text"> dan <input type="submit"> untuk menerima input interaktif.

Pautan interaktif

Tag <a href="javascript:namaFungsi()">Teks/Imej</a> untuk melaksanakan subatur cara atau membuka tetingkap baharu menggunakan window.open() apabila teks atau grafik diklik.

Cuba Jawab Dulu

Cuba jawab sendiri dahulu, kemudian tekan butang untuk menyemak.

Apakah syarat utama yang mesti dipenuhi oleh satu senarai data sebelum carian perduaan (binary search) dapat dilaksanakan?

Senarai data tersebut mestilah telah diisih terlebih dahulu, sama ada tertib menaik atau menurun.

Apakah perbezaan utama dari segi pemulangan nilai antara procedure (prosedur) dan function (fungsi) dalam JavaScript?

Prosedur tidak memulangkan sebarang nilai kepada pemanggil, manakala fungsi memulangkan nilai menggunakan pernyataan return.

Dalam struktur giliran (queue), apakah operasi yang dilakukan oleh fungsi shift() dan pop() dalam JavaScript?

shift() mengeluarkan nilai terawal dari bahagian depan tatasusunan, manakala pop() mengeluarkan nilai dari bahagian belakang tatasusunan, bergantung pada kaedah kemasukan data FIFO yang digunakan.

Kesalahan Biasa

  • Menggunakan carian perduaan (binary search) ke atas data mentah yang belum diisih, menyebabkan algoritma gagal menemui unsur yang dicari.
  • Lupa bahawa indeks tatasusunan bermula dari 0 dan berakhir pada panjang - 1, mengakibatkan ralat off-by-one atau undefined apabila gelung merujuk i <= no.length.
  • Tertukar antara pengendali umpukan = dengan pengendali persamaan logik ==.
  • Menjangkakan bahawa gelung while akan melaksanakan blok sekurang-kurangnya sekali walaupun syarat awal adalah false. Gelung do...while yang menjamin pelaksanaan minimum sekali.
  • Lupa meletakkan pernyataan return dalam sesebuah fungsi yang sepatutnya mengembalikan nilai hasil kiraan kepada pemanggil.

Salah Faham Konsep

Salah Faham

JavaScript adalah sama dengan bahasa Java.

Fakta Betul

Java ialah bahasa pengaturcaraan berorientasikan objek yang berasingan, manakala JavaScript ialah bahasa penskripan berasaskan objek yang biasanya dibenam dalam HTML untuk pelayar web. Sintaksnya mirip tetapi konsep dan kegunaannya berbeza.

Salah Faham

Penskripan klien boleh menggantikan sepenuhnya fungsi penskripan pelayan dalam pemprosesan pangkalan data.

Fakta Betul

Penskripan klien tidak boleh mencapai pangkalan data pusat pelayan atau memanipulasi fail sistem pada pelayan secara terus atas faktor fungsi dan keselamatan.

Salah Faham

Nilai awal bagi algoritma mencari maksimum boleh dimulakan dengan nombor yang besar seperti 999.

Fakta Betul

Nilai awal mencari maksimum mesti dimulakan dengan nilai yang paling rendah, contohnya -1 atau unsur pertama senarai, supaya sebarang nombor sebenar dalam senarai dapat mengatasinya. Nilai 999 digunakan untuk mencari nilai minimum.

Ringkasan

  • Bahasa penskripan klien seperti JavaScript membolehkan pembinaan laman web interaktif yang diproses di sebelah komputer pengguna.
  • Struktur kawalan merangkumi jujukan, pilihan, dan ulangan.
  • Algoritma isihan merangkumi bubble sort dan selection sort, manakala carian perduaan memerlukan data yang telah diisih.
  • Struktur data giliran FIFO menggunakan pasangan push/shift atau unshift/pop.
  • Tatasusunan digunakan untuk mengurus data secara berkelompok dengan indeks berasaskan sifar.
  • Prosedur, fungsi, dan pustaka piawai seperti math.js dan date.js membantu pengorganisasian kod modular.

Aktiviti Ringkas

A. Kuiz Objektif

1 Apakah prinsip operasi yang digunakan oleh struktur data giliran (queue)?

2 Antara pernyataan berikut, yang manakah membezakan gelung do...while daripada gelung while?

B. Isi Tempat Kosong

3 Kata kunci yang digunakan dalam JavaScript untuk mengisytiharkan pemalar yang nilainya tidak boleh berubah ialah .

4 Dalam kaedah carian perduaan (binary search), senarai unsur yang hendak dicari mestilah telah terlebih dahulu.

C. Padankan Fungsi JavaScript atau Komponen Penskripan Web dengan Kegunaannya

Seret pilihan ke kotak padanan yang betul. Jika menggunakan telefon, tekan pilihan jawapan dahulu, kemudian tekan kotak padanan.

Komponen / Fungsi
math.sqrt(x)
push()
||
break
Kegunaan / Penerangan
1 Mengira punca kuasa dua bagi nombor
2 Memasukkan data dari arah belakang ke dalam queue
3 Operator logikal OR yang memerlukan hanya satu syarat benar
4 Memberhentikan dan menamatkan suatu gelung ulangan serta-merta
 

Kata Kunci

Bahasa Penskripan Klien HTML CSS Isihan Buih Isihan Pilih Carian Perduaan Giliran Pemalar Pemboleh Ubah Prosedur Fungsi Pustaka Piawai

Bahasa Penskripan Klien

3.1 Bahasa Penskripan Klien
SAINS KOMPUTER • Tingkatan 5 • Bab 3: Pengaturcaraan Berasaskan Web

3.1 Bahasa Penskripan Klien

Bahasa penskripan klien ialah bahasa pengaturcaraan yang dilaksanakan pada komputer klien melalui pelayar web untuk memanipulasi serta memaparkan kandungan web secara interaktif dan dinamik tanpa perlu kerap membebankan pelayan.

Objektif Pembelajaran

  • Menerangkan keperluan bahasa penskripan klien dalam laman web.
  • Menterjemah atur cara mudah bahasa penskripan klien kepada carta alir bagi isihan buih, isihan pilih, carian perduaan, maksimum, minimum, min, bilangan dan giliran.
  • Menggunakan pemalar, pemboleh ubah, dan pelbagai jenis data dalam atur cara penskripan klien.
  • Menggunakan struktur kawalan jujukan, pilihan, dan ulangan dalam atur cara.
  • Menerangkan kelebihan serta menggunakan standard library seperti math.js dan date.js dalam bahasa penskripan klien.
  • Meringkaskan atur cara menggunakan prosedur dan fungsi.
  • Membina atur cara yang melibatkan penggunaan tatasusunan.
  • Menghasilkan atur cara interaktif berasaskan web yang mengandungi pengisytiharan data, struktur kawalan, subatur cara, dan tatasusunan.

Perbandingan Senibina Aliran Pelaksanaan Penskripan Klien lwn Penskripan Pelayan

Permohonan URL diproses antara pelayar web pengguna (klien) dan komputer hos (pelayan). Skrip klien dilaksanakan pada pelayar, manakala skrip pelayan dilaksanakan pada pelayan sebelum laman dihantar semula.

Aliran Permohonan URL: Klien dan Pelayan

Aliran permohonan URL antara klien dan pelayan Dua kotak besar bersebelahan. Kotak kiri ialah Pelayar Web Klien yang memproses HTML, CSS dan JavaScript. Kotak kanan ialah Pelayan Web dan Pangkalan Data. Lima langkah bernombor dihubungkan dengan anak panah: langkah 1 pengguna menghantar permohonan URL dari klien ke pelayan; langkah 2 pelayan memproses skrip pelayan dan berinteraksi dengan pangkalan data; langkah 3 pelayan menghantar laman HTML dan skrip klien kembali kepada klien; langkah 4 pelayar memuatkan HTML, CSS dan JavaScript; langkah 5 pelayar menterjemah dan memaparkan laman interaktif kepada pengguna. PELAYAR WEB KLIEN HTML + CSS + JavaScript Penterjemahan & paparan Pengesahan borang, kiraan segera PELAYAN WEB Penskripan pelayan (PHP/ASP) Pangkalan data Penghantaran laman HTML 1 3 Request URL HTML + skrip klien Langkah 4-5: Muat & papar Langkah 2: Proses skrip pelayan

Skrip klien diproses pada pelayar pengguna; skrip pelayan diproses pada komputer hos sebelum laman dihantar semula.

Penerangan Ringkas

Keperluan bahasa penskripan klien, algoritma asas, pemboleh ubah, struktur kawalan, pustaka piawai, subatur cara, tatasusunan dan laman interaktif.

Apakah bahasa penskripan klien?

Bahasa penskripan klien ialah bahasa pengaturcaraan yang dilaksanakan pada komputer klien melalui pelayar web untuk memanipulasi serta memaparkan kandungan web secara interaktif dan dinamik.

Gabungan HTML, CSS, dan JavaScript membolehkan pelbagai algoritma asas pemprosesan data dilaksanakan terus pada pelayar.

Konsep Pelanggan/Pelayan

Pelanggan (Klien) ialah pelayar web pengguna pada komputer atau peranti mudah alih yang menghantar permohonan.

Pelayan (Server) memproses permintaan, melaksanakan penskripan pelayan, dan menghantar laman web serta berinteraksi dengan pangkalan data.

Kaedah Penulisan JavaScript

Explicit embedding

Kod JavaScript ditulis secara terus di dalam fail HTML, di antara tag <script> dan </script>.

Implicit embedding

Kod JavaScript disimpan dalam fail luaran berekstensi .js dan dipanggil menggunakan atribut src.

Contoh
<script src="myScript.js"></script>

Laman Web Statik dan Dinamik

Perbezaan laman web statik dan dinamik
CiriStatikDinamik
PembinaanHTML sahajaPenskripan pelayan seperti PHP atau ASP
PaparanTerhad mengikut tag HTMLDipanggil dari pangkalan data atau interaksi pengguna
Kemas kiniManualAutomatik dan mudah
ContohLatar belakang organisasiKandungan yang berubah mengikut pengguna

Kelebihan dan Kekangan Bahasa Penskripan Klien

Kelebihan

  • Laman web menjadi lebih interaktif.
  • Pelaksanaan tugas pantas tanpa penglibatan pelayan, contohnya pengesahan borang dan kiraan shopping cart serta-merta.
  • Meningkatkan kebolehgunaan web bagi pelayar yang menyokong penskripan klien.
  • Membolehkan pembangun menentukan reka bentuk dan ciri-ciri web.

Kekangan

Tidak dapat melaksanakan tugas capaian terus kepada pangkalan data pelayan atau fail sistem pelayan.

Algoritma Asas Penskripan Klien

Isihan Buih (Bubble Sort)

Membandingkan dua unsur bersebelahan satu demi satu dan menukar kedudukan jika urutan salah. Turutan menaik: tukar jika unsur pertama > unsur kedua. Turutan menurun: tukar jika unsur pertama < unsur kedua. Sesuai untuk saiz data kecil dan tujuan pembelajaran.

Isihan Pilih (Selection Sort)

Mencari nilai terkecil atau terbesar daripada senarai dan menukar kedudukannya dengan unsur yang dirujuk. Turutan menaik: cari indeks terkecil min, bandingkan jika no[j] < no[min], kemudian tukar dengan no[i] jika min != i.

Carian Perduaan (Binary Search)

Memerlukan data yang telah diisih. Menentukan indeksTengah = Math.floor((indeksAkhir + indeksAwal) / 2). Jika nilai tengah sama dengan nilai carian, nilai dijumpai. Jika no[indeksTengah] > nilai carian, cari di separuh kiri. Jika no[indeksTengah] < nilai carian, cari di separuh kanan.

Maksimum, Minimum, Min dan Bilangan

Maksimum: nilai awal sangat rendah seperti -1; jika unsur > nilaiMaksimum, kemas kini nilai maksimum. Minimum: nilai awal sangat tinggi seperti 999; jika unsur < nilaiMinimum, kemas kini nilai minimum. Min: purata = jumlah / pembilang dengan akumulator jumlah = jumlah + no dan kaunter pembilang = pembilang + 1. Bilangan: pembilang = pembilang + 1.

Struktur Giliran (Queue)

Struktur giliran menggunakan konsep FIFO (First-In, First-Out). Operasi asas ialah enqueue (masuk) dan dequeue (keluar).

Kaedah dalam JavaScript:

  • Pasangan 1: push() masuk di belakang dan shift() keluar di depan.
  • Pasangan 2: unshift() masuk di depan dan pop() keluar di belakang.

Pemboleh Ubah, Pemalar dan Jenis Data

Pemboleh ubah dan pemalar

Pemboleh ubah diisytiharkan menggunakan kata kunci var.

Pemalar diisytiharkan menggunakan kata kunci const, contohnya nilai π = 3.142.

Jenis data asas

  • Nombor — integer atau perpuluhan, contoh 5, 100.50.
  • Rentetan / String — diapit tanda petik, contoh "Ali bin Abu".
  • Boolean — true atau false.

Struktur Kawalan

Jujukan

Pelaksanaan arahan satu demi satu mengikut urutan dari atas ke bawah tanpa syarat.

Pilihan

if melaksanakan blok jika syarat true. if...else melaksanakan satu blok jika true, blok lain jika false.

Operator hubungan: ==, !=, >, <, >=, <=.

Operator logik: && (AND), || (OR), ! (NOT).

Ulangan

Berasaskan pembilang: gelung for(nilai awal; syarat tamat; kemas kini).

Berasaskan syarat: gelung while menyemak syarat dahulu; gelung do...while melaksanakan blok sekurang-kurangnya sekali sebelum syarat disemak.

Kawalan gelung: break memberhentikan gelung serta-merta; continue melangkau baki lelaran semasa.

Standard Library

Standard library ialah koleksi fungsi atau kaedah sedia ada yang ditakrifkan dalam spesifikasi bahasa untuk memudahkan pengaturcaraan. Kelebihannya: boleh digunakan tanpa perlu tahu cara pelaksanaannya, boleh diguna berulang kali, dan menjimatkan masa pembangunan.

math.js

Memuatkan fungsi matematik seperti math.sqrt(x), math.pow(x, y), math.add(x, y), math.subtract(x, y), math.divide(x, y), math.cube(x), dan math.sort(x).

date.js

Memuatkan fungsi tarikh seperti Date.today(), Date.parse('today'), dan Date.today().add().days().

Pustaka boleh dimasukkan melalui fail tempatan <script src="math.js"></script> atau pautan CDN pelayan web.

Prosedur dan Fungsi

Prosedur

Melaksanakan tugas tanpa memulangkan sebarang nilai ke pemanggil; hanya memaparkan output secara terus.

Fungsi

Memproses data dan memulangkan nilai menggunakan kata kunci return.

Parameter

Parameter sebenar ialah nilai atau pemboleh ubah yang dihantar semasa memanggil subatur cara. Parameter rasmi ialah pemboleh ubah dalam takrifan subatur cara yang menerima nilai yang dihantar.

Tatasusunan (Array)

Tatasusunan menyimpan senarai elemen dalam satu nama pemboleh ubah tunggal. Indeks berasaskan sifar, bermula dari indeks 0 hingga n-1.

Pengisytiharan: var no = [5, 1, 4, 12, 8]; atau var no = [];. Tatasusunan boleh dimanipulasi menggunakan gelung for untuk proses carian, pengisihan, dan penjumlahan.

Membina Laman Web Interaktif

Butang interaktif

Tag HTML <button onclick="namaFungsi()">Label</button> membolehkan pengguna mencetuskan peristiwa untuk melaksanakan kod JavaScript.

Borang HTML

Tag <form> bersama komponen input seperti <input type="text"> dan <input type="submit"> untuk menerima input interaktif.

Pautan interaktif

Tag <a href="javascript:namaFungsi()">Teks/Imej</a> untuk melaksanakan subatur cara atau membuka tetingkap baharu menggunakan window.open() apabila teks atau grafik diklik.

Cuba Jawab Dulu

Cuba jawab sendiri dahulu, kemudian tekan butang untuk menyemak.

Apakah syarat utama yang mesti dipenuhi oleh satu senarai data sebelum carian perduaan (binary search) dapat dilaksanakan?

Senarai data tersebut mestilah telah diisih terlebih dahulu, sama ada tertib menaik atau menurun.

Apakah perbezaan utama dari segi pemulangan nilai antara procedure (prosedur) dan function (fungsi) dalam JavaScript?

Prosedur tidak memulangkan sebarang nilai kepada pemanggil, manakala fungsi memulangkan nilai menggunakan pernyataan return.

Dalam struktur giliran (queue), apakah operasi yang dilakukan oleh fungsi shift() dan pop() dalam JavaScript?

shift() mengeluarkan nilai terawal dari bahagian depan tatasusunan, manakala pop() mengeluarkan nilai dari bahagian belakang tatasusunan, bergantung pada kaedah kemasukan data FIFO yang digunakan.

Kesalahan Biasa

  • Menggunakan carian perduaan (binary search) ke atas data mentah yang belum diisih, menyebabkan algoritma gagal menemui unsur yang dicari.
  • Lupa bahawa indeks tatasusunan bermula dari 0 dan berakhir pada panjang - 1, mengakibatkan ralat off-by-one atau undefined apabila gelung merujuk i <= no.length.
  • Tertukar antara pengendali umpukan = dengan pengendali persamaan logik ==.
  • Menjangkakan bahawa gelung while akan melaksanakan blok sekurang-kurangnya sekali walaupun syarat awal adalah false. Gelung do...while yang menjamin pelaksanaan minimum sekali.
  • Lupa meletakkan pernyataan return dalam sesebuah fungsi yang sepatutnya mengembalikan nilai hasil kiraan kepada pemanggil.

Salah Faham Konsep

Salah Faham

JavaScript adalah sama dengan bahasa Java.

Fakta Betul

Java ialah bahasa pengaturcaraan berorientasikan objek yang berasingan, manakala JavaScript ialah bahasa penskripan berasaskan objek yang biasanya dibenam dalam HTML untuk pelayar web. Sintaksnya mirip tetapi konsep dan kegunaannya berbeza.

Salah Faham

Penskripan klien boleh menggantikan sepenuhnya fungsi penskripan pelayan dalam pemprosesan pangkalan data.

Fakta Betul

Penskripan klien tidak boleh mencapai pangkalan data pusat pelayan atau memanipulasi fail sistem pada pelayan secara terus atas faktor fungsi dan keselamatan.

Salah Faham

Nilai awal bagi algoritma mencari maksimum boleh dimulakan dengan nombor yang besar seperti 999.

Fakta Betul

Nilai awal mencari maksimum mesti dimulakan dengan nilai yang paling rendah, contohnya -1 atau unsur pertama senarai, supaya sebarang nombor sebenar dalam senarai dapat mengatasinya. Nilai 999 digunakan untuk mencari nilai minimum.

Ringkasan

  • Bahasa penskripan klien seperti JavaScript membolehkan pembinaan laman web interaktif yang diproses di sebelah komputer pengguna.
  • Struktur kawalan merangkumi jujukan, pilihan, dan ulangan.
  • Algoritma isihan merangkumi bubble sort dan selection sort, manakala carian perduaan memerlukan data yang telah diisih.
  • Struktur data giliran FIFO menggunakan pasangan push/shift atau unshift/pop.
  • Tatasusunan digunakan untuk mengurus data secara berkelompok dengan indeks berasaskan sifar.
  • Prosedur, fungsi, dan pustaka piawai seperti math.js dan date.js membantu pengorganisasian kod modular.

Aktiviti Ringkas

A. Kuiz Objektif

1 Apakah prinsip operasi yang digunakan oleh struktur data giliran (queue)?

2 Antara pernyataan berikut, yang manakah membezakan gelung do...while daripada gelung while?

B. Isi Tempat Kosong

3 Kata kunci yang digunakan dalam JavaScript untuk mengisytiharkan pemalar yang nilainya tidak boleh berubah ialah .

4 Dalam kaedah carian perduaan (binary search), senarai unsur yang hendak dicari mestilah telah terlebih dahulu.

C. Padankan Fungsi JavaScript atau Komponen Penskripan Web dengan Kegunaannya

Seret pilihan ke kotak padanan yang betul. Jika menggunakan telefon, tekan pilihan jawapan dahulu, kemudian tekan kotak padanan.

Komponen / Fungsi
math.sqrt(x)
push()
||
break
Kegunaan / Penerangan
1 Mengira punca kuasa dua bagi nombor
2 Memasukkan data dari arah belakang ke dalam queue
3 Operator logikal OR yang memerlukan hanya satu syarat benar
4 Memberhentikan dan menamatkan suatu gelung ulangan serta-merta
 

Kata Kunci

Bahasa Penskripan Klien HTML CSS Isihan Buih Isihan Pilih Carian Perduaan Giliran Pemalar Pemboleh Ubah Prosedur Fungsi Pustaka Piawai