Javascript & JQuery Client Side Scripting Herman Tolle – Sistem Informasi PTIIK UB
Web Dinamis Website yang dinamis menyediakan interaksi antara pengguna dengan halaman web Interaktifitas tidak didapatkan pada dokumen yang murni HTML saja. Kemampuan pemrograman dapat ditambahkan pada dokumen web untuk interaktifitas
Why JavaScript?
Web application round-trip expensive no way to do computation on the client side example: form validation
Web pages static no way to allow users to interact with the page example: popup link menus
What is needed
client-side code
Pemrograman Web Client Side Script : Script yang ditambahkan dalam dokumen html, dieksekusi oleh browser client. Javascript, Jscript, VBScript Server Side Script: Script yang ditambahkan dalam dokumen html, dieksekusi oleh server, hasilnya dalam bentuk html yang dikirim ke client. ASP/ASP.Net, PHP, CGI, JSP, dll
Pemrosesan Script Web Browser (Client side processing) HTML JavaScript Java Applets
Server Side Processing
HTTP
Web Server
CGI SSI Servlet PHP JSP ASP
Databases
Client Side Script
Script yang ditambahkan (embedded) pada halaman web yang sebelumnya hanya disusun dengan sintaks HTML. Penambahan script ini mempunyai tujuan tertentu. Misalnya: menampilkan jam dan tanggal yang upto-date, menu yang dinamis (mis: pull down menu), kontrol terhadap sebuah window, animasi sederhana, animasi mouse maupun untuk validasi form, dll
Client Side Script Advantage: Waktu proses relatif cepat karena langsung dieksekusi oleh browser client Tidak memerlukan web server untuk hosting Dapat dieksekusi langsung oleh berbagai browser
Disadvantage: Script bisa dilihat oleh pengguna Script dapat di copy-paste Tidak cocok untuk akses data atau database
Server Side Script
Digunakan untuk membuat aplikasi web atau konten-konten dinamis: news, buku tamu, dll PHP: open source dan banyak digunakan luas Active Server Pages (ASP) dan ASP.Net, teknologi yang dikembangkan oleh Microsoft ColdFusion (CFM), dikembangkan oleh Macromedia Java Server Pages dan Servlet dikembangkan oleh Sun Microsystem Common Gateway Interface (CGI), yang dibuat dengan bahasa pemrograman C++ atau Perl Server Side Include (SSI), seperti misalnya Frontpage Server Extension
Server Side Script Advantage: Script tidak bisa dilihat oleh pengguna, sehingga tidak dapat di-copy-paste Cocok untuk akses data atau aplikasi database Untuk membuat fitur-fitur tertentu yang berguna, misalnya: hit counter, user manajemen, disain yang dinamis, CMS, dll Disdvantage: Waktu proses relatif lebih lambat karena dieksekusi oleh server Memerlukan web server untuk hosting
JavaScript
Dikembangkan oleh Netscape tahun 1995 JavaScript is
a scripting language for web clients interpreted Un-typed: tidak memiliki tipe data spesifik
Dynamic HTML
combination of JavaScript, CSS and DOM to create very flexible web page presentation
Pengenalan JavaScript • Asal mula nama JavaScript adalah LiveScript, dikembangkan pertama kali pada tahun 1995 di Netscape Communications.
• Hasil kolaborasi antara Netscape dan Sun (pengembang bahasa pemrograman “Java” ) memberikan nama baru “JavaScript” pada tanggal 4 desember 1995. • JavaScript adalah bahasa skrip yang ditempelkan pada kode HTML dan diproses pada sisi klien, sehingga kemampuan dokumen HTML menjadi lebih luas. – JavaScript memungkinkan untuk memvalidasi masukan-masukan pada formulir sebelum dikirim ke server – JavaScript dapat mengimplementasi interaktiftifitas
• Javascript bergantung kepada browser(navigator) yang memanggil halaman web yang berisi skrip skrip dari Javascript yang terselip di dalam dokumen HTML. 11
Perbedaan JavaScript dan Pemrograman Java
• JavaScript adalah bahasa yang “case sensitive” artinya membedakan penamaan variabel dan fungsi yang menggunakan huruf besar dan huruf kecil. • Seperti bahasa Java ataupun C, setiap instruksi dalam JavaScript diakhiri dengan karakter titik koma (;). 12
JavaScript code can be embedded in a Web page using SCRIPT tags <SCRIPT>
the output of JavaScript code is displayed as if directly entered in HTML
JavaScript Page <script type="text/javascript"> document.write("Hello world!"); document.write("
How are
" + "you?
");
Here is some static text as well.
Bentuk skrip dan Komentar •
Skrip dari JavaScript terletak di dalam dokumen HTML. <SCRIPT language="Javascript"> letakkan script anda disini
•
Pada navigator versi lama, sebelum adanya JavaScript, tidak mengenal tag tersebut dan akan melewatkannya untuk di baca. Untuk itu perlu ditambahkan tag komentar agar skripnya tidak dibaca sebagai skrip, tetapi di baca sebagai komentar dan tidak akan dieksekusi sebagai program. <SCRIPT language="Javascript">
•
Untuk menulis komentar dalam satu baris kita gunakan karakter dobel slash. // semua karakter di belakang // tidak akan di eksekusi
•
Untuk menulis komentar yang terdiri dari beberapa baris kita gunakan karakter /* dan */ /* Semua baris antara 2 tanda tersebut tidak akan di eksekusi oleh kompilator */ 14
Meletakkan Script dalam HTML • Menggunakan tag <SCRIPT> – Tag <SCRIPT> diletakkan diantara bagian kepala dari dokumen HTML, yaitu bagian antara tag dan . Pemanggilan fungsi JavaScript (atau disebut juga event) diletakkan di bagian badan dokumen HTML atau bisa kita sebut diantara tag dan . – Contoh :
<TITLE>Contoh Program Javascript <SCRIPT language="Javascript">
15
Meletakkan Script dalam HTML • Menggunakan file ekstern – Menuliskan kode program JavaScript dalam suatu file teks dan kemudian file teks yang berisi kode JavaScript di panggil dari dalam dokumen HTML (khusus Netscape mulai versi 3 keatas).
<SCRIPT LANGUAGE="Javascript" SRC="url/file.js"> dimana url/file.js adalah adalah lokasi dan nama file yang berisi kode JavaScript, jika perintah tambahan SRC tidak disertakan maka tag Script akan mencari kode yang terletak di dalam tag Script.
• Melalui event tertentu –
Event adalah sebutan dari satu action yang dilakukan oleh user, contohnya seperti klik tombol mouse.
dimana eventHandler adalah nama dari event tersebut.
16
Properti • Properti adalah atribut dari sebuah objek. • Penulisannya (dipisahkan dengan tanda “.”) : nama_objek . nama_properti • Properti dapat diberi nilai, penulisannya : objek . properti = nilai • Contoh : <TITLE>Properti defaultStatus Nama Properti Tes defaultStatus
<SCRIPT LANGUAGE = "JavaScript">
Nama Objek
17
Metode • Properti adalah suatu kumpulan kode yang digunakan untuk melakukan sesuatu tindakan terhadap objek. • Penulisannya (dipisahkan dengan tanda “.”) : nama_objek . nama_metode(“parameter”) – Contoh : <TITLE>Skrip Javascript Nama Metode Parameter <SCRIPT language="Javascript"> ”): document.write(“Semoga Sukses” !”); // --> Nama Objek 18
Penanganan Kejadian (Event Handler) • Penanganan Kejadian adalah sekumpulan kode yang akan dijalankan manakala pemakai melakukan suatu tindakan/kejadian, misalnya mengklik tombol mouse atau ketika menutup jendela browser. • Penulisannya :nama_kejadian = “kumpulan kode” • Kumpulan kode dapat berisi sejumlah pernyataan. Antar pernyataan dipisahkan titik-koma. • Contoh : <TITLE>Kejadian Tes Kejadian
Cobalah meletakkan penunjuk mouse ke link berikut dan perhatikan isi baris status. Kemudian pindahkan penunjuk mouse dari link berikut dan perhatikan isi baris status
Fujitsu
19
Pemasukan Data • JavaScript memiliki mekanisme yang memungkinkan pemakai disuguhi jendela untuk memasukkan sederetan masukan setelah pemakai mengklik tombol OK, maka kode dalam JavaScript akan melakukan serangkaian proses. • Contoh : <TITLE>Pemasukan Data <SCRIPT LANGUAGE = "JavaScript">
20
Jendela Peringatan dan Jendela Konfirmasi • Jendela Peringatan <TITLE>Alert Box <SCRIPT LANGUAGE = "JavaScript">
• Jendela Konfirmasi <TITLE>Konfirmasi <SCRIPT LANGUAGE = "JavaScript">
21
Variabel • Variable adalah suatu obyek yang berisi data data, yang mana dapat di modifikasi selama pengeksekusian program. • Aturan pemberian nama variabel : – Nama variabel harus dimulai oleh satu huruf (huruf besar maupun huruf kecil) atau satu karakter ''_''. – Nama variabel bisa terdiri dari huruf huruf, angka angka atau karakter _ dan & (spasi kosong tidak diperbolehkan). – Nama variabel tidak boleh memakai nama yang digunakan dalam reserved program, seperti : abstract, boolean, break, byte, if, implements, import, in, infinity, instanceof, int, interface, dll
22
Mendeklarasikan Variabel • eksplisit : dengan menuliskan kata kunci var kemudian diikuti dengan nama variabel dan nilai dari variabel : var test = “halo” • implisit : dengan menuliskan secara langsung nama dari variabel dan diikuti nilai dari variabel : test = “halo” <SCRIPT language="Javascript">
23
Operator Matematika <TITLE>Operasi Matematika <SCRIPT LANGUAGE = "JavaScript"> "); document.write("20 + 3 = " + (20 - 3) ); document.write("
"); document.write("20 * 3 = " + (20 * 3) ); document.write("
"); document.write("20 / 3 = " + (20 / 3) ); document.write("
"); document.write("20 % 3 = " + (20 % 3) ); document.write("
"); //--> 24
Operator Pembanding dan Logika Operator
Keterangan
Kategori
==
Kesamaan
Pembanding
!=
Ketidaksamaan
Pembanding
<
Kurang dari
Pembanding
<=
Kurang dari atau sama dengan
Pembanding
>
Lebih dari
Pembanding
>=
Lebih dari atau sama dengan
Pembanding
Bukan
Logika
&&
Dan
Logika
||
Atau
Logika
?
Kondisi ? Nilai Benar : Nilai Salah
Pembanding
!
25
Operator Pembanding dan Logika <TITLE>Operator ? <SCRIPT LANGUAGE = "JavaScript"> = 60) ? "Lulus" : "Tidak Lulus"; document.write("Hasil: " + hasil); //-->
26
Pernyataan IF • Pernyataan IF tanpa else if (kondisi) {
• Pernyataan IF dengan ELSE if (kondisi) { // blok pernyataan yang dijalankan // kalau kondisi bernilai benar
// blok pernyataan yang dijalankan // kalau kondisi bernilai benar
} else {
} <TITLE>Contoh if <SCRIPT LANGUAGE = "JavaScript"> = 60) hasil = "Lulus"; document.write("Hasil: " + hasil); //-->
// blok pernyataan yang dijalankan // kalau kondisi bernilai salah
} <TITLE>Contoh if-else <SCRIPT LANGUAGE = "JavaScript"> = 60) hasil = "Lulus"; else hasil = "Tidak Lulus"; document.write("Hasil: " + hasil); //-->
27
Pernyataan IF Bersarang <TITLE>Contoh if Berkalang <SCRIPT LANGUAGE = "JavaScript">
if (kode_hari == 5) nama_hari = "Jumat"; else nama_hari = "Sabtu"; document.write("Hari ini hari " + nama_hari); document.write(", tanggal " + tanggal.getDate() + "/" + (tanggal.getMonth() + 1) + "/" + tanggal.getYear()); //-->
28
Pernyataan Switch • Bentuknya : switch (variabel) { case nilai1 : perintah1; break; case nilai2 : perintah2; break; default perintahN; break; } 29
Pernyataan Switch <TITLE>Contoh switch <SCRIPT LANGUAGE = "JavaScript">
case 5: nama_hari = "Jumat"; break; case 6: nama_hari = "Sabtu"; } document.write("Hari ini hari " + nama_hari); document.write(", tanggal " + tanggal.getDate() + "/" + (tanggal.getMonth() + 1) + "/" + tanggal.getYear()); //-->
30
Proses Berulang : Pernyataan While • Bentuk pernyataan : while (kondisi) { pernyataan } • Contoh : <TITLE>Contoh while <SCRIPT LANGUAGE = "JavaScript"> "); bilangan++; } //-->
31
Proses Berulang : Pernyataan Do….While • Bentuk pernyataan : do { blok pernyataan } while (kondisi) ; • Contoh : <TITLE>Contoh do while <SCRIPT LANGUAGE = "JavaScript"> "); bilangan++; } while (bilangan < 6); //-->
32
Perulangan : Pernyataan For…. • Bentuk pernyataan : for (inisialisasi; kondisi; penaikan_penurunan) { pernyataan_pernyataan } • Contoh : <TITLE>Contoh for <SCRIPT LANGUAGE = "JavaScript"> "); //-->
33
Proses Pengulangan dalam Pengulangan <TITLE>Contoh for Berkalang <SCRIPT LANGUAGE = "JavaScript">
34
Fungsi • Mendefinisikan Fungsi function nama(daftar_parameter) { Pernyataan_1; pernyataan_n; Nama fungsi } HTML> <TITLE>Contoh Fungsi <SCRIPT LANGUAGE = "JavaScript"> "); document.write(jumlah(4, 5)); //-->