id
1.1 HTML
By
Maret 1995: draft HTML 3.0 di rilis (belakangan habis masa nerlakunya/expired)
Mei 1996: draft HTML 3.2 di rilis
Juli 1996: HTML experimental DTD 'Cougar' di rilis
Januari 1997: HTML 3.2 (Wilbur) direkomendasi oleh W3C (World Wide Web
Consortium
Juli 1997: darft HTML 4.0 (dikembangkan dari Cougar) di rilis
Nopember 1997: HTML 4.0 menjadi usulan rekomendasi W3C
Desember 1997: HTML 4.0 direkomendasi oleh W3C
April 1998: HTML 4.0 direvisi dan direkomendasi oleh W3C
Desember 1998: draft untuk formulasi HTML dalam XML (eXtensible Markup
Language) dengan codename ‘Voyager’ di rilis
Januari 1999: draft kerja awal XHTML 1.0 di rilis
Desember 1999: XHTML 1.0 menjadi usulan rekomendasi W3C
September 1999: draft kerja awal XHTML 1.1 di rilis
Januari 2000: XHTML 1.0 direkomendasi oleh W3C
April 2001: XHTML 1.1 menjadi usulan rekomendasi W3C
Mei 2001: XHTML 1.1 direkomendasi oleh W3C
Page 1 / 197
http://www.hendra-jatnika.web.id
• Kebanyakan tag HTML merupakan pasangan, <b> dan </b> (tag awal dan akhir)
• Text yang berada diantara kedua tag adalah unsur content (tag bertindak sebagai
container)
• Tag harus tersusun secara baik (properly nested ) yaitu tidak saling tumpang tindih
• Tag tidak case sensitive; <b> mempunyai arti sama dengan <B>
• XHTML adalah case sensitive dan harus lower case
<html>
<head>
<title>My Title</title>
</head>
<body>
Hello, World!
</body>
</html>
tag <HTML> dan </HTML> digunakan untuk menandai awal dan akhir dari suatu file
HTML
e t
tag <TITLE> dan </TITLE>, Tulisan yang berada diantara tag ini akan ditampilkan
N
oleh browser pada bagian title yang mana merupakan title dari jendela browser.
a
d r
tag <HEAD> </HEAD> , Berisi keterangan informasi halaman, seperti title dan jenis
dokumen dll
e n
H
tag <BODY> </BODY> , menandai awal dan akhir dari badan dokumen HTML yang
y
ditampilkan pada browser
B
1.5 Fungsi dan Pengunaan tag-tag dalam HTML
HTML mengandung tag yang dapat digunakan memformat tampilan tulisan pada
halaman anda. Tag yang digunakan a.l:
Page 2 / 197
http://www.hendra-jatnika.web.id
Page 3 / 197
http://www.hendra-jatnika.web.id
1.5.2 Whitespace
• Whitespace adalah karakter yang tidak diprint seperti: space, tab, newline, dan lainnya
• HTML memperlakukan whitespace sebagai pemisah kata, dan baris text secara
otomatis mengikuti lebar dari halaman
• Untuk pidah baris halaman dapat digunakan tag <br> atau tag <p> dan </p>
membuat kumpulan text dalam satu pragraf
• Tag <pre> dan </pre> dapat digunakan pada text sehingga whitespace ditampilkan
sesuai dengan apa yang ditulis (“pre” singkatan dari “preformatted”)
Ada sejumlah karakter yang tidak dapat diketik langsung pada bagian body HTML,
termasuk symbol untuk bahasa asing.
e t
Tabel Karakter khusus
a N
Entitas r
Keterangan
d Contoh
©
e n
copyright symbol ©
® H
registered trademark ®
™
By symbol
trademark symbol ™
nonbreaking space
< less-than symbol <
> greater-than symbol >
& ampersand &
" quotation mark "
Contoh :
Kode Hasil
2 < 3, adalah benar<br> 2 < 3, adalah benar
3 > 4, adalah salah 3 > 4, adalah salah
Page 4 / 197
http://www.hendra-jatnika.web.id
1.5.4 Lists
• Ada dua jenis list HTML yaitu ordered, <ol> to </ol>, dan unordered, <ul> to </ul>
• Ordered lists menggunakan nomor: 1, 2, 3, ...
• Unordered lists menggunakan bullets (•)
• Elements dari list adalah <li> dan </li>
Contoh :
Kode Hasil
<ul> Sugar
<li>Sugar</li> Chips
<li>Chips</li> Caffeine
<li>Caffeine</li> Chocolate
<li>Chocolate</li>
</ul>
Attributes
Page 5 / 197
http://www.hendra-jatnika.web.id
1.5.4 Links
1.5.6 Images
• Images (pictures) bukanlah bagain dari halaman HTML; HTML hanya memberitahu
dimana image di temukan
<img src="URL" alt="text description" width="150" height="100">
•
• e t
Atribut src attribute yang diperlukan sedang lainnya optional
The URL alamat dan nama image seperti:.gif, .jpg, atau .png
• a N
Atribut alt memberi text sebagai representasi jika image gagal ditampilkan
•
d r
Atribut height and width jika disertakan memperbaiki tampilan image (jika ukuran salah
n
maka tampilan gambar akan terganggu)
e
H
• Tidak ada tag akhir </img> karena tag <img> bukan container
Page 6 / 197
http://www.hendra-jatnika.web.id
1.5.7 Tables
• Tables digunakan untuk mengorganisir informasi dalam dua dimensi (baris dan kolom)
• Suatu <table> dapat terdiri satu atau lebih baris table, <tr>
• Setiap baris table terdiri dari satu atau lebih cell table data, <td>, atau cell table header,
<th>
– Perbedaan antara <td> dan <th> hanya pada format text. Pada cell <th> otomatis
dalam format “boldface” dan “centered”
• Borders (batas) pada cell dapat diberi dengan menambah attribute: border="1" pada tag
awal <table>
Contoh table:
Kode Hasil
<table border="1">
<tr>
<th>Name</th> <th>Phone</th>
</tr>
<tr>
<td>Dick</td> <td>555-1234</td>
</tr> e t
<tr> a N
<td>Jane</td> <td>555-2345</td>
d r
</tr>
e n
<tr> H
By
<td>Sally</td> <td>555-3456</td>
</tr>
</table>
Page 7 / 197
http://www.hendra-jatnika.web.id
1.5.8 Frames
• Frames adalah cara membagi jendela browser dalam beberapa bingkai. Halaman
HTML terpisah dapat ditempatkan pada tiap bingkai.
Framesets
• Letakkan tag <frame> dalam <frameset> yang merupakan rows atau columns
t
– <frame> bukan container maka tidak ada tag akhir </frame>
e
N
• Setiap <frame> mempunyai atribut seperti ini: src=”URL “
a
Dan beberapa tag e optional:
d r
– scrolling="yes|no|auto" (default is "auto")
– noresize
e n
H
By
Contoh lengkap Frame (situs The Java API):
Kode
<HTML>
<HEAD>
<TITLE>Java 2 Platform SE v1.4.0</TITLE>
</HEAD>
<FRAMESET cols="20%,80%">
<FRAMESET rows="30%,70%">
<FRAME src="overview-frame.html" name="packageListFrame">
<FRAME src="allclasses-frame.html" name="packageFrame">
</FRAMESET>
<FRAME src="overview-summary.html" name="classFrame">
</FRAMESET>
<NOFRAMES>
<H2>If you see this, you have frames turned off!</H2>
</NOFRAMES>
</HTML>
Page 8 / 197
http://www.hendra-jatnika.web.id
Hasil
e t
a N
d r
Tabel tag Frames e n
H
By
Column Widths <FRAMESET COLS=,,,> </FRAMESET>
Column Widths <FRAMESET COLS=*> </FRAMESET>
Define Frame <FRAME>
Display Document <FRAME SRC="URL">
Frame Document <FRAMESET> </FRAMESET>
<FRAME
Frame Name
NAME="***"|_blank|_self|_parent|_top>
Margin Width <FRAME MARGINWIDTH=?>
Margin Height <FRAME MARGINHEIGHT=?>
Not Resizeable <FRAME NORESIZE>
Scrollbar <FRAME SCROLLING="YES|NO|AUTO">
Row Heights <FRAMESET ROWS=,,,> </FRAMESET>
Row Heights <FRAMESET ROWS=*> </FRAMESET>
Unframed Content <NOFRAMES> </NOFRAMES>
1.5.9 Forms
• <form> merupakans tag HTML yang digunakan untuk rancangan interface pada halam
web:
– Untuk meminta informasi dari user yang kemudian dikirim ke server
• Suatu form terdiri dari:
Page 9 / 197
http://www.hendra-jatnika.web.id
Elemen Form termasuk:: buttons, checkboxes, text fields, radio buttons, drop-down
menus, dll
– Form biasanya dilenkapi button untuk kirim informasi ke server “Submit button”
Parameters form memberitahu bagaimana informasi dikirim:.
– action="url" (diperlukan)
• menetapkan kemana informasi dikirim jik button “Sbmit” diklik
– method="get" (default)
• Data Form dikirim sebagai suatu URL dengan menyertakan info data form form
• Dapat digunakan jika hanay menggunkan data l ASCII dan tidak lebih dari 100
karakter
– method="post"
• Data Form dikirim dalam body URL request
tag <input>
– Kebanyakan elemen form menggunakan tag input dengan, type="..." berupa: text,
checkbox, radio, password, hidden, submit, reset, button, file, atau image
• Parameter taga input a.l:
– name: nama dari elemen
– value: “value”/nilai dari elemen
– readonly: nila yang tak bisa dirobah
e t
– disabled: user tak dapat melakukan apa pun pada elemen ini
a N
Contoh-contoh Text input:
d r
e n
A text field:
H
By
<input type="text" name="textfield" value="with an initial value">
Hasil:
A password field:
<input type="password" name="textfield3" value="secret">
Hasil:
textarea
A multi-line text field
<textarea name="textarea" cols="24" rows="2">Hello</textarea>
Hasil:
Page 10 / 197
http://www.hendra-jatnika.web.id
Buttons
• A submit button:
<input type="submit" name="Submit" value="Submit">
• A reset button:
<input type="reset" name="Submit2" value="Reset">
• A plain button:
<input type="button" name="Submit3" value="Push Me">
Hasil:
Keterangan:
e t
• Submit : kirim data
a N
Reset : restore semua lemen form ke keadaan semula
•
• Button : ada aksi dari java script d r
e n
H
Checkboxes
Kode
By Hasil
A checkbox:
<input type="checkbox"
name="checkbox”
value="checkbox" checked>
Radio buttons
Radio buttons:<br>
<input type="radio" name="radiobutton" value="myValue1">
male<br>
<input type="radio" name="radiobutton" value="myValue2" checked>
female
Hasil:
Page 11 / 197
http://www.hendra-jatnika.web.id
Contoh lengkap:
Kode Hasil
<html>
<head>
<title>Get Identity</title>
<meta http-equiv="Content-Type"
content="text/html;
</head>
charset=iso-8859-1">
e t
<body> a N
<p><b>Who are you?</b></p>
d r
<form method="post" action="">
e n
<p>Name: H
By
<input type="text" name="textfield">
</p>
<p>Gender:
<input type="radio" name="gender"
value="m">Male
<input type="radio" name="gender"
value="f">Female</p>
</form>
</body>
</html>
Page 12 / 197
http://www.hendra-jatnika.web.id
TYPE="TEXT|PASSWORD|CHECKBOX|RADIO
|IMAGE|HIDDEN|SUBMIT|RESET">
Max Length <INPUT MAXLENGTH=?>
Multiple Choice <SELECT MULTIPLE>
Name of Box <TEXTAREA NAME="***"> </TEXTAREA>
Name of List <SELECT NAME="***"> </SELECT>
Option <OPTION>
Selection List <SELECT> </SELECT>
<TEXTAREA WRAP=OFF|VIRTUAL|PHYSICAL>
Wrap Text
</TEXTAREA>
# of Options <SELECT SIZE=?> </SELECT>
Page 13 / 197
http://www.hendra-jatnika.web.id
<tr>
<td width="106">Jurusan</td>
<td width="471"><select size="1" name="Jurusan">
<option selected>Komputer</option>
<option>Akuntansi</option>
<option>Sekretaris</option>
</select></td>
</tr>
</table>
</center>
</div>
<p><input type="submit" value="Submit" name="Submit">
<input type="reset" value="Reset" name="Reset"></p>
</form>
</center>
</body>
</html>
Hasil:
Kuesioner Mahasiswa
Nama
Password
Jenis
Kelamin Pria Wanita
Submit Reset
Dalam contoh ini chef.gif adalah nama objek gambar yang dipanggil/dilink dengan lokasi
seperti ditunjukkan diatas. Sedangkan file yang memanggil adalah page1.html.
Cara lain adalah dengan menuliskan alamat relatif seperti berikut (link relatif):
Page 14 / 197
http://www.hendra-jatnika.web.id
e t
a N
d r
SRC="../images/chef.gif" berarti gambar
By
SRC="../../../other/images/chef.gif"
Ada baiknya menggunakan URL relatif dibandingkan dengan pemakaian URL absolut
(lengkap). Karena dalam perancangan web site, hasil rancangan dapat disimpan di hard disk
sendiri dan semua link akan berfungsi pada saat di-upload ke server di internet, dan juga
file/gambar tersebut akan lebih cepat ditampilkan oleh browser. Adapun URL absolut
digunakan jika gambar tadi terletak di server yang sama sekali berbeda.
Page 15 / 197
http://www.hendra-jatnika.web.id
Pendahuluan
CSS merupakan suatu teknik atau cara sederhana dalam membuat style (layout-tampilan)
dokumen html menjadi lebih efisien. Dengan CSS pekerjaan dalam desain dan pengelolaan situs
web menjadi lebih mudah karena ada pemisahan antara konten dan layout. Satu style sheet dapat
digunakan untuk tampilan keseluruhan situs. Dengan demikian melakukan modifikasi file css
secara otomatis akan meng update juga keseluruhan halaman-halaman web.
Pada dasarnya CSS adalah kumpulan/list dari statemen (pernyataan) atau dikenal sebagai
rules yang dapat merender berbagai sifat pada elemen HTML. Style rule dapat ditujukan untuk
elemen tunggal, multi elemen, seluruh dokumen, atau bahkan sekaligus untuk multi dokumen.
Juga dimungkinkan menerapkan banyak rule yang saling berbeda untuk suatu elemen berbeda
lokasi yang menggunakan metoda berbeda. Sebagai style rule tunggal, semua rule ini
dikumpulkan dan di satukan dan dikenal sebagai “cascading” of style.
Sintaks bahasa untuk style sheet agak berbeda dengan HTML, sehingga diperlukan
penjelasan lebih lanjut dalam implementasinya.
Alasan diperkenalkannya CSS adalah ketika HTML yang semula ditujukan untuk mark-up
language berbasis content (content terpisah dari kode), berkembang tak terkendali dengan
diperkenalkannya berbagai cara formatting dan juga elemen/atribut oleh para pembuat browser.
Sehingga menjadikan kode HTML terkotori dan menyimpang dari tujuan utama HTML. Dengan
CSS dapat dibuat terpisah antara tampilan dan content.
e t
Perkembangan CSS:
a N
- Mei 1995 - Draft awal CSS d r
e n
- November 1995 – Drat kerja CSS1 oleh W3C (World Wide Web Consortium)
H
- 17 Desember 1996 - CSS1 direkomendasi oleh W3C
By
- November 1997 – Draft kerje CSS2 di rilis ke publik
- Maret 1998 - CSS2 usulan rekomendesai W3C
- Mei 1998 - CSS2 direkomendasi oleh W3C
- Desember 1998 - W3C merilis Note "List of suggested extensions to CSS" -
- Augustus 2002 – Draft pertama CSS 2.1 dirilis ke publik
- Januari 2003 – Draft kerja kedua dari CSS 2.1 dirilis
- September 2003 – Draft kerja terakhir CSS 2.1 dirilis
Deawasa ini hampir semua browser mendukung CSS2, meskipun ada bagian dari fitur yang
belum dapat di implementasi pada browser. Dan saat ini CSS3 masih dalam pengembangan
dengan memikirkan penggunaan ke depan.
Page 16 / 197
http://www.hendra-jatnika.web.id
Sintaks CSS
Sintaks CSS cukup sederhana—terdiri dari kumpulan selectors (pilihan tags) dan
descriptors (memberi tahu apa yang dilakukan padanya):
Selektor dinyatakan terlebih dahulu yang kemudian Selektor ditempatkan pad kurung
kurawal {' and '}.
– dimana:
Contoh CSS
Contoh Keterangan
/* This is a comment */ Komentar
h1,h2,h3 {font-family: Arial, sans-serif;} Prioritas adalah font pertama
p, table, li, address { font-family: "Courier Font dan margin diberlakukan untuk
New";margin-left: 15pt; } semua tag (p, table, address)
p, li, th, td {font-size: 80%;} Ukuran 80% untuk elemen dari tag
th {background-color:#FAEBD7} Warna dpt dpt ditulis dalam
Page 17 / 197
http://www.hendra-jatnika.web.id
Selectors
• Tag-tag baik HTML atau XML dapat digunakan sebagai elemen selector:
body { background-color: #ffffff }
• Multiple selectors:
em, i {color: red}
Pengulangan selectors:
h1, h2, h3 {font-family: Verdana; color: red}
h1, h3 {font-weight: bold; color: pink}
• Jika terjadi ketidak sesuaian nilai, maka yang paling akhir menimpa yang pertama
• Universal selector * dapat digunakan untuk semua elements:
* {color: blue}
• Jika terjadi ketidak sesuaian nilai, maka selectors spesifik menimpa yang umum (sehingga
em akan tetap red)
Contoh
e t
a N
d r
e n
H
By
Page 18 / 197
http://www.hendra-jatnika.web.id
• Nilai atribut:
– Syntax: element[attribute="value"] { ... }
– Contoh: table[border="0"] { ... }
Atribut class
Atribut id
• div dan span adalah elemen HTML yang mempunyai fungsi untuk menangani informasi
CSS
• div seperti layaknya paragraph membri line break sebelum dan sesudah; sedangkan
span tidak
• Contoh:
– CSS: div {background-color: #66FFFF}
span.color {color: red}
– HTML: <div>This div is treated like a paragraph, but <span class="color">this
span</span> is not.</div>
Page 19 / 197
http://www.hendra-jatnika.web.id
– Inline styles
• Digunakan hanya pada HTML (bukan utko XML )
• Terbatas dalam sintaks CSS
• Keuntungan:
– Berguna jika hanya sebagian kecil yang ingin di markup
• Kekurangan:
– Karena tercampur - membingungkan kode HTML
– Tidak dapat diterapkan keseluruhan fitur CSS
Page 20 / 197
http://www.hendra-jatnika.web.id
• Jika ada conflict dalam styles conflict, maka yang terdekat (nearest) ( atau most
recently applied) dimenangkan
• font-size:
– inherit | smaller | larger | xx-small | x-small | small | medium | large | x-large
| xx-large | 12pt
• font-weight:
– normal | bold |bolder | lighter | 100 | 200 | ... | 700
• font-style:
– normal | italic | oblique
Menyingkat properties
Page 21 / 197
http://www.hendra-jatnika.web.id
• Dalam ukuran:
– em, ex, px, % : font size, x-height, pixels, percent of inherited size
– in, cm, mm, pt, pc: inches, centimeters, millimeters, points (1/72 of an inch), picas (1
pica = 12 points), relative to the inherited value
• text-align:
– left | right | center | justify
• text-decoration:
– none | underline | overline | line-through
• text-transform:
– none | capitalize | uppercase | lowercase
• text-indent
– length | 10% (indents the first line of text)
e t
• white-space:
a N
– normal | pre | nowrap
d r
e n
Pseudo-classes H
•
waktu:
By
Pseudo-classes adalah elemen yang keadaan (dan tampilan) dapat berobah terhadap
Page 22 / 197
http://www.hendra-jatnika.web.id
CSS Browser
Sintak Sintak Spesifik 1.0 2.0 IExplorer Netscape Opera
Inclusion Methods X X 3.0 4.0B2 3.5
External Style Sheets X X 3.0 4.0B2 3.5
Embedded Style Sheets X X 3.0 4.0B2 3.5
Inline Style Sheets X X 3.0 4.0B3 3.5
@Rules X X 4.0 4.0 3.5
@charset -- X 5.5 6.0 ??
@import X X 4.0 6.0 3.5
@media -- X 4.0 6.0 3.5
@namespace -- -- -- 6.0 --
@page -- X 5.5 -- 4.0
@fontdef -- -- -- 4.0-4.x --
@font-face -- X 4.0 -- --
Rule Set Syntax X X 3.0 4.0 3.5
Selector Grouping X X 3.0 4.0 3.5
Declaration Grouping X X 3.0 4.0 3.5
e t
Declaration Shorthands X X
a N3.0 4.0 3.5
Selectors X
d r X 3.0 4.0 3.5
Element - Namespace
e n -- -- -- 6.0 --
Element - Universal H -- X 5.0 6.0 4.0
By
Element - Simple
Element - Descendent
X
X
X
X
3.0
3.0
4.0
4.0
3.5
3.5
Element - Child -- X -- 6.0 3.5
Element - Adjacent -- X -- 6.0 5.0
Attribute - Simple -- X -- 6.0 4.0
Attribute - Value -- X -- 6.0 4.0
Attribute - Begin Value -- -- -- 6.0 --
Attribute - End Value -- -- -- 6.0 --
Attribute - Substring Value -- -- -- 6.0 --
Attribute - One-Of-Many -- X -- 6.0 4.0
Attribute - Hyphen -- X -- -- --
Attribute - Namespace -- -- -- 6.0 --
HTML - Class X X 3.0 4.0 3.5
HTML - ID X X 3.0 4.0 3.5
Pseudo-Classes X X 3.0 4.0 3.5
:link X X 3.0 4.0 3.5
:visited X X 3.0 4.0 3.5
:active X X 4.0 6.0 5.0
Page 23 / 197
http://www.hendra-jatnika.web.id
Contoh-Contoh:
eksternal1.html
<html>
<head>
<link rel="stylesheet" type="text/css" href="eksternal1.css" />
</head>
Page 24 / 197
http://www.hendra-jatnika.web.id
<body>
eksternal2.css
body {background-color: tan}
h1 {color:maroon; font-size:20pt}
hr {color:navy}
p {font-size:11pt; margin-left: 15px}
a:link {color:green}
a:visited {color:yellow}
a:hover {color:black}
a:active {color:blue}
eksternal2.html
<html>
<head>
<link rel="stylesheet" type="text/css"
href="eksternal2.css"/>
e t
</head>
a N
<body> d r
e n
<h1>This is a header 1</h1>
H
By
<hr>
</body>
</html>
<style type="text/css">
body {background-color: yellow}
h1 {background-color: #00ff00}
h2 {background-color: transparent}
p {background-color: rgb(250,0,255)}
</style>
</head>
<body>
Page 25 / 197
http://www.hendra-jatnika.web.id
<p>This is a paragraph</p>
</body>
</html>
<html>
<head>
<style type="text/css">
p {border-style: solid;
border-bottom-width: 15px}
</style>
</head>
<body>
</body>
</html>
</head>
<body>
<ul>
<li><a href="#">Link one</a></li>
<li><a href="#">Link two</a></li>
<li><a href="#">Link three</a></li>
<li><a href="#">Link four</a></li>
</ul>
<p>
In the example above, we let the ul element and the a element float to
the left.
The li elements will be displayed as inline elements (no line break
Page 26 / 197
http://www.hendra-jatnika.web.id
before or after the element). This forces the list to be on one line.
The ul element has a width of 100% and each hyperlink in the list has a
width of 6em (6 times the size of the current font).
We add some colors and borders to make it more fancy.
</p>
</body>
</html>
<style type="text/css">
ul {
list-style-type:square; list-style-position:inside; list-style-
image:url('arrow.gif')}
</style>
</head>
<body>
<ul>
<li>Coffee</li>
e t
<li>Tea</li>
<li>Coca Cola</li> a N
</ul>
d r
e n
</body>
</html> H
Contoh 7 (embeded css)
<html>
By
<head>
<style type="text/css">
a.one:link {color: #ff0000}
a.one:visited {color: #0000ff}
a.one:hover {color: #ffcc00}
Page 27 / 197
http://www.hendra-jatnika.web.id
<body>
<p>Mouse over the links to see them change layout.</p>
</html>
References
e t
• Some of the examples in this presentation were taken from the W3Schools online tutorial at
http://www.w3schools.com/css/css_syntax.asp
a N
d r
• Dave Raggett’s Adding a Touch of Style is a very nice online tutorial at
http://www.w3.org/MarkUp/Guide/Style
e n
H
• Index DOT Css has also been a great source of information about CSS:
By
http://www.blooberry.com/indexdot/css/index.html
– In particular, there is a list of when CSS features were first supported by which browsers (-
- means “not yet supported”) at
http://www.blooberry.com/indexdot/css/supportkey/syntax.htm
Page 28 / 197
http://www.hendra-jatnika.web.id
e t
a N
d r
e n
H
By
Page 29 / 197
http://www.hendra-jatnika.web.id
JavaScript
Apa dan untuk apa JavaScript?
• JavaScript dikembangkan pertama sekali oleh Netscape, merupakan bahasa script
paling populer pada internet dan kompatibel dengan berbagai browser
• Javascript dirancang untuk menambah interaktivitas halaman-halaman HTML.
• JavaScript adalah bahasa scripting (teks biasa – tanpa di compile) bebas lisensi dan
mudah untuk dipelajari dan digunakan dibanding bhs programming tradisional.
• JavaScript bekerja pada sisi client (client side). Browsers menterjemahkan statemen
(perintah) JavaScript yang disisipkan (embedded) secara langsung pada halaman HTML.
• JavaScript dirancang untuk digunakan pada halaman Web dan terintegrasi dengan
HTML.
• Statemen JavaScript yang disisipkan pada halaman HTML dapat mengenal dan
merespon User Events seperti Mouse Clicks, Form Input, dan Page Navigation.
• JavaScript dapat membaca dan menulis elemen-elemen HTML
• JavaScript dapat digunakan untuk validasi data - Sebagai contoh dalam Form Isian
• JavaScript dapat digunakan untuk deteksi browser pengunjung (nama, versi dll)
• JavaScript dapat digunakan untuk membuat cookies – Suatu informasi yang distore
pada komputer pengunjung untuk kemudian diretrieve untuk menegnal pengunjung
tersebut.
Kode JavaScript ditempatkan didalam file HTML, dengan demikian kode JavaScript
dapat dibuat dengan cara yang sama membuat HTML yaitu menggunakan editor teks
seperti WordPad ataupun NotePad.
Page 30 / 197
http://www.hendra-jatnika.web.id
1. Menangani Event
• Menangani Event akan mengubah halaman yang statis menjadi lebih dinamis.
• Event adalah hasil terhadap aksi yang dilakukan oleh pemakai, seperti klik
pada mouse, klik pada tombol submit di suatu form, dan keluar dari halaman.
• JavaScript menggunakan Event Handlers untuk merespon Event.
• Event Handlers telah ditulis kedalam berbagai jensi tag HTML dan tidak
diperlukan lagi tag <SCRIPT>.
Sebagai contoh, berikut ini adalah contoh kombinasi HTML dan JavaScript untuk
memberi pesan bagi user.
Kebanyakan (tidak semua) element-elemen pada halaman web merespon thdp interaktivitas
user (seperti: keystrokes, mouse clicks) dengan membuat events Handlers dapat ditempatkan
pada elemen form HTML
Contoh 2
<HTML> * name : dapat digunakan oleh kode
<BODY> JavaScript lain
<form method="post" action=""> * value : yang muncul pada button (yaitu: “Click
<input type="button" me”)
name="myButton" * onclick : nama event yang di handle
value="Click me" * Nilai dari elemen onclick adalah kode
onclick="alert('You clicked the JavaScript code yang di execute yaitu
button!');"> "alert('You clicked the button!');"
</form>
</BODY>
<HTML>
Page 31 / 197
http://www.hendra-jatnika.web.id
Catatan:
2. Tanda petik tunggal dan dobel digunakan dalam hal ini karena ada tanda petik
didalam tanda petik.
3. Menempatkan semicolon (;) pada setiap statemen adalah optional kecuali jika lebih
dari statemen dalam satu baris.
4. <script type="text/javascript"> juga dapat dituliskan sebagai
<script language="javaScript">
5. Menagani Browser versi lama (tidak support JavaScript)
Browser versi lama umumnya tidak mendukung java script dan akan menampilkan
code script sebagi content. Untuk mencegah hal ini terjadi digunakan tag commnet
HTML seperti diperlihatkan berikut:
<script type="text/javascript">
<!--
some statements
//-->
</script>
e t
a N
6. Komentar
d r
n
JavaScript mendukung dua bentuk format untuk komentar:
e
•
•
H
Komentar satu baris yang diawali dengan suatu double slash (//)
Komentar banyak baris yang diawali dengan suatu /* dan diakhiri dengan
suatu */ By
Event-event Umum
<html>
<body>
<h1 onMouseOver="style.color='red';"
onMouseOut="style.color='blue';">Hello </h1>
</body>
</html>
Page 32 / 197
http://www.hendra-jatnika.web.id
d r
kursor stas link
MouseOut Areas, links
e n User menggerakkan OnMouseOut
H kursosr menjauhi image
map atau link
Select
By
Text fields, text areas User memilih field dari
elemen form input
onSelect
<script type="text/javascript">
document.write("<h1>Hello World!</h1>")
</script>
</body>
</html>
Page 33 / 197
http://www.hendra-jatnika.web.id
o Script eksternal yaitu kode javascript dibuat terpisah dalam satu file yang
dapat dipanggil melalui file html
Contoh: Script pada Bagian Head dan dipanggil (eksekusi) pada bagian body
<html>
<head>
<script type="text/javascript">
function message()
{
alert("This alert box was called with the onload event")
}
</script>
</head>
<body onload="message()">
</body>
</html>
Contoh: Script pada Bagian Body dan dikesekusi begitu halaman di load
<html>
<head>
</head>
<body>
<script type="text/javascript">
document.write("This message is written when the page loads")
</script>
e t
</body>
</html> a N
d r
Contoh: Script External
e n
H
Buat file javascript yang disimpan dengan ekstensi .js dan kemudian dipanggil melalui file
By
html
<html>
<head>
</head>
<body>
<script src="xxx.js">
</script>
<p>
Script merupakan suatu file ekternal dengan nama"xxx.js".
</p>
</body>
</html>
Alert Box dalam JavaScript dapat dibuat dalam tiga jenis popup box: Alert box, Confirm
box, dan Prompt box.
Alert Box
Alert box sering digunakan untuk meyakinkan bahwa informasi datang melalui user.
Ketika suatu alert box pops up (muncul), user mesti klik "OK" untuk dilanjutkan.
Page 34 / 197
http://www.hendra-jatnika.web.id
Syntax:
alert("sometext")
Contoh:
<html>
<head>
<script type="text/javascript">
function disp_alert()
{
alert("I am an alert box!!")
}
</script>
</head>
<body>
<form>
<input type="button" onclick="disp_alert()" value="Display alert box">
</form>
</body>
</html>
Confirm Box
Confirm box sering digunakan diinginkan bahwa user telah menerima sesuatu.
Ketika confirm box muncul, user mesti klik salah satu "OK" atau "Cancel".
Syntax:
confirm("sometext")
e t
Contoh:
a N
<html>
d r
<head>
<script type="text/javascript">
e n
function disp_confirm() H
By
{
var name=confirm("Press a button")
if (name==true)
{
document.write("You pressed the OK button!")
}
else
{
document.write("You pressed the Cancel button!")
}
}
</script>
</head>
<body>
<form>
<input type="button" onclick="disp_confirm()" value="Display a confirm box">
</form>
</body>
</html>
Prompt Box
Prompt box sering digunakan untuk memberi user kesempatan menginput suatu nilai sebelum masuk suatu
halaman.
Ketika Prompt box muncul, user mesti kilk salah satu "OK" atau "Cancel" to proceed after entering an input
value.
If the user clicks "OK" the box returns the input value. If the user clicks "Cancel" the box returns null.
Syntax:
prompt("sometext","defaultvalue")
Page 35 / 197
http://www.hendra-jatnika.web.id
Contoh:
<html>
<head>
<script type="text/javascript">
function disp_prompt()
{
var name=prompt("Please enter your name","")
if (name!=null && name!="")
{
document.write("Hello " + name + "! How are you today?")
}
}
</script>
</head>
<body>
<form>
<input type="button" onclick="disp_prompt()" value="Display a prompt box">
</form>
</body>
</html>
Variabel
By
Null, yang mana adalah keyword khusus yang mengawali nilai kosong.
Perlu diperhatikan bahwa tidak ada perbedaan antara tipe integer dengan real,
keduanya memiliki tipe yang sama yaitu number.
JavaScript tidak menyediakan tipe data khusus untuk data tanggal. Tetapi memiliki
beberapa fungsi dan object date yang dapat digunakan untuk melakukan manipulasi data
tanggal.
Nama Variable adalah case sensitive (beda antar huruf besar dan kecil)
Harus dimulai dengansuatu huruf atau under score ( _ ), dengan hruf dan selanjtnya
berupa angka
First_Name
t99
_name
Batasan lainnya dalam pemberian nama variabel adalah tidak boleh sama dengan cadangan
kata pada JavaScript. Tabel 1 adalah daftar dari cadangan kata pada JavaScript.
Page 36 / 197
http://www.hendra-jatnika.web.id
variabel Global
variabel Local e t
a N
r
Variabel lokal digunakan didalam suatu fungsi dan ruang linkupnya terbatas pada fungsi
d
n
tersebut. Jika keluar dari fungsi maka variabel jadi hilang. Variabel lokal dapa mempunyai
e
H
nama yang sama dalam funsi berbeda. Untuk mendeklarasikan suatu variabel lokal, harus
diawali dengan var, seperti contoh berikut ini:
var MaxValue=0
By
Jika variable dideklarasi diluar funsi dan semaua fungsi dalam halaman dapat mengaksesnya
didefenisikan sebagai variabel global.
JavaScript mengganggap semua variabel yang tidak diawali dengan var adalah variabel
global. Walaupun JavaScript memperbolehkan anda menggunakan nama variabel yang sama
untuk local maupun global, tetapi adalah praktek yang tidak disarankan.
TIP
Untuk memastikan fungsi mendapatkan nilai yang benar dari
suatu variabel global, deklarasikan semua variabel global
tersebut pada awal dari script.
Contoh: variabel
<html>
<body>
<script type="text/javascript">
var name = "Budi Santosa"
document.write(name)
document.write("<h1>"+name+"</h1>")
</script>
Page 37 / 197
http://www.hendra-jatnika.web.id
<p>Contoh ini mendeklarasikan suatu variable, memberi (assigns) nilai padanya dan
menampilkannya </p>
</body>
</html>
Arithmetic operator
Assigment operator
Comparison operator
Logical operator
String operator
Arithmetic Operators
a N 5-x
* Multiplication
d r x=4 20
e n x*5
/ Division
H 15/5
5/2
3
2.5
%
By
Modulus (division remainder) 5%2
10%8
1
2
10%2 0
++ Increment x=5 x=6
x++
-- Decrement x=5 x=4
x--
Assignment Operators
Comparison Operators
Page 38 / 197
http://www.hendra-jatnika.web.id
Logical Operators
Operator String
String umumnya adalah teks, contoh "Hello World!". Untuk menyatukan dua atau lebih nilai variable string
variables dapat gunakan opreator +.
e t
a N
txt1="What a very"
txt2="nice day!" d r
txt3=txt1+txt2
e n
H
By
Variabel txt3 sekarang menjadi "What a verynice day!".
txt1="What a very"
txt2="nice day!"
txt3=txt1+" "+txt2
atau
Functions
Function adalah suatu blok kode yang dapat digunakan ulang dan dapat dieksekusi oleh
suatu event ataupun jika function dipanggil.
Mendefenisikan Function
function myfunction(argument1,argument2,etc)
{
some statements
}
Page 39 / 197
http://www.hendra-jatnika.web.id
function myfunction()
{
some statements
}
Arguments adalah variables yang digunakan dalam function. Nilai variable adalah nilai yang
dilewatkan oleh paggilan function.
function result(a,b)
{
c=a+b
return c
}
atau
function total(a,b)
{
result=a+b
return result
}
Conto-contoh Function:
e t
1. Memanggil suatu function.
a N
<html>
d r
<head>
e n
<script type="text/javascript">
function myfunction() H
{
alert("HELLO")
}
By
</script>
</head>
<body>
<form>
<input type="button"
onclick="myfunction()"
value="Call function">
</form>
<p>Dengan menekan tombol, funtion akan dipanggil dan function akan
menampilkan (alert) message.</p>
</body>
</html>
<html>
<head>
<script type="text/javascript">
function myfunction(txt)
{
alert(txt)
}
</script>
</head>
Page 40 / 197
http://www.hendra-jatnika.web.id
<body>
<form>
<input type="button"
onclick="myfunction('Hello')"
value="Call function">
</form>
<html>
<head>
<script type="text/javascript">
function myfunction(txt)
{
alert(txt)
}
</script>
</head>
<body>
<form>
<input type="button"
onclick="myfunction('Selamat Pagi!')"
value="Pada pagi hari">
e t
<input type="button"
a N
onclick="myfunction('Selamat Malam!')"
d r
value="Pada malam hari">
</form>
e n
H
<p>
By
Jika salah satu dari tombol maka function akan dipanggil dan
menampilkan argument yang dilewatkan padanya.
</p>
</body>
</html>
<html>
<head>
<script type="text/javascript">
function myFunction()
{
return ("Hallo, apa khabar ?")
}
</script>
</head>
<body>
<script type="text/javascript">
document.write(myFunction())
</script>
<p>Script pada body memanggil function.</p>
<p>Dan function mengembalikan (returns) suatu text.</p>
</body>
</html>
Page 41 / 197
http://www.hendra-jatnika.web.id
<html>
<head>
<script type="text/javascript">
function total(numberA,numberB)
{
return numberA + numberB
}
</script>
</head>
<body>
<script type="text/javascript">
document.write(total(2,3))
</script>
<p>Script pada body memanggil function dengan dua arguments, 2 dan
3.</p>
<p>Function mengembalikan hasil penjumlahan kedua arguments.</p>
</body>
</html>
Conditional Statements
a N
Dalam JavaScript ada tiga conditional statements:
d r
e n
if statement – digunakan jika ingin mengeksekusi suatu kode ketika
H
kondisi/persyaratan adalah benar (true)
kode untuk dieksekusi By
if...else statement – digunakan jika ingin memilih satu atau dua baris
switch statement – digunakan jika ingin memilih satu dari banyak baris
untuk dieksekusi
Contoh-contoh:
<html>
<body>
<script type="text/javascript">
var d = new Date()
var time = d.getHours()
if (time > 12)
{
document.write("<b>Selamat Siang dan Malam</b>")
}
</script>
<p>
This example demonstrates the If statement.
</p>
Page 42 / 197
http://www.hendra-jatnika.web.id
<p>
Jika waktu dari komputer lebih besar dari 12, maka akan
dimunculkan ucapan "Selamat Siang/Malam".
</p>
</body>
</html>
2. If...else statement
<html>
<body>
<script type="text/javascript">
var d = new Date()
var time = d.getHours()
if (time < 10)
{
document.write("<b>Selamat Pagi</b>")
}
else
{
document.write("<b>Selamat Siang</b>")
}
</script>
<p>
Contoh memperagakan If...Else statement.
</p>
</body>
</html>
e t
3. Random link a N
d r
Link ke W3Schools.com atau ke RefsnesData.no akan mempunyai kesempatan sebesar 50%.
e n
<html>
<body> H
By
<script type="text/javascript">
var r=Math.random()
if (r>0.5)
{
document.write("<a href='http://www.w3schools.com/'>Learn Web
Development!</a>")
}
else
{
document.write("<a href='http://www.refsnesdata.no/'>Visit
Refsnes Data!</a>")
}
</script>
</body>
</html>
4. Switch statement
Jika ingin memilih satu dari banyak blok kode untuk dieksekusi.
<html>
<body>
<script type="text/javascript">
var d = new Date()
theDay=d.getDay()
switch (theDay)
{
Page 43 / 197
http://www.hendra-jatnika.web.id
case 6:
document.write("Sabtu hari libur kerja")
break
case 5:
document.write("Jumat hari krida")
break
case 2:
document.write("Hari ini Selasa, agar lebih giat
belajar")
break
case 1:
document.write("Senin hari awal kerja")
break
default:
document.write("Hari Minggu, Selamat bersantai!")
}
</script>
JavaScript Looping
e t
a N
untuk beberapakali.
d r
Looping statements dalam JavaScript digunakan untuk eksekusi satu blok kode yang sama
e n
H
Dalam JavaScript beberapa looping statement sbb:
nilai true.
By
while – Perintah while terus mengulangi loop selama kondisi memiliki
Contoh-contoh:
1. For loop
Menggunakan For loop untuk menjalankan blok kode yang sama untuk beberapakali (sesuai yang ditetapkan)
<html>
<body>
<script type="text/javascript">
for (i = 0; i <= 5; i++)
{
document.write("Ini adalah Bilangan " + i)
document.write("<br>")
}
</script>
<p>Penjelasan:</p>
<p>For loop di set <b>i</b> sama dengan 0.</p>
<p>Loop berlanjut dan berulang <b>i</b> sepanjang bilangan mencapai
hingga sama dengan 5</p>
Page 44 / 197
http://www.hendra-jatnika.web.id
</body>
</html>
<html>
<body>
<script type="text/javascript">
for (i = 1; i <= 6; i++)
{
document.write("<h" + i + ">Ini adalah header " + i)
document.write("</h" + i + ">")
}
</script>
</body>
</html>
3. While loop
While loop untuk menjalankan kode sepanjang kondis true
<html>
<body>
<script type="text/javascript">
i = 0
while (i <= 5)
e t
{
document.write("Ini adalah Bilangan " + i) a N
document.write("<br>")
d r
i++
} e n
</script> H
<p>Explanation:</p> By
<p><b>i</b> equal to 0.</p>
<p>While <b>i</b> is less than , or equal to, 5, the loop will
continue to run.</p>
<p><b>i</b> will increase by 1 each time the loop runs.</p>
</body>
</html>
4. Do while loop
Catatan: Loop akan selalu di eksekusi sekali meski kondisi false, karena penyataan executed berada sebelum
condisi di uji
<html>
<body>
<script type="text/javascript">
i=0
do
{
document.write("Ini adalah Bilangan " + i)
document.write("<br>")
i++
}
while (i <= 5)
</script>
<p>Explanation:</p>
Page 45 / 197
http://www.hendra-jatnika.web.id
</body>
</html>
Array Object
Objek Array digunakan untuk menyimpan sekumpulan nilai pada nama variable tunggal. Setiap nilai
merupakan elemen dari array dan mempunyai nomor index.
Dapat juga dituliskan nama dari array dengan nomor indek yang dimulai dengan 0, seperti contoh
berikut:
family_names[0]="Tove"
family_names[1]="Jani"
family_names[2]="Stale"
e t
a N
r
Dan data dapat di ambil (retrieved) dengan munggunakan nomor index number dari elemen array
d
yang diinginkan seperti berikut:
e n
mother=family_names[0] H
father=family_names[1]
By
Contoh-contoh
<html>
<body>
<script type="text/javascript">
var famname = new Array(6)
famname[0] = "Jan Egil"
famname[1] = "Tove"
famname[2] = "Hege"
famname[3] = "Stale"
famname[4] = "Kai Jim"
famname[5] = "Borge"
</body>
Page 46 / 197
http://www.hendra-jatnika.web.id
</html>
<html>
<body>
<script type="text/javascript">
var famname = new Array("Jan Egil","Tove","Hege","Stale","Kai
Jim","Borge")
</body>
</html>
<html>
<body>
<script type="text/javascript">
var famname = new Array(3)
e t
famname[0] = "Jani"
famname[1] = "Tove"
a N
famname[2] = "Hege"
d r
e
document.write(famname.length + "<br>") n
H
document.write(famname.join(".") + "<br>")
By
document.write(famname.reverse() + "<br>")
document.write(famname.push("Ola","Jon") + "<br>")
document.write(famname.pop() + "<br>")
document.write(famname.shift() + "<br>")
</script>
</body>
</html>
4. Array - sort()
Metoda sort(). Contoh ini memperagakan pengurutan (sort) bilangan yang terdapat dalam suatu array.
<html>
<body>
<p>
<b>Note:</b> Jika tidak menggunkan compareFunction dalam pengurutan
(sort) maka array diurut secara lexicographic. Dimana dalam hal ini
angka "500" akan muncul terlebih dahulu(dianggap lebih kecil)
dibanding angka "7" , tapi dalam numeric sort angka 7 muncul duluan
(lebih kecil) dibanding 500. Contoh disini memperagakan compare
function – untuk sort element dalam array.
</p>
<script type="text/javascript">
array1=new Array("Red","Blue","Green")
array2=new Array("70","9","800")
array3=new Array(50,10,2,300)
array4=new Array("70","8","850",30,10,5,400)
Page 47 / 197
http://www.hendra-jatnika.web.id
function compareNum(a,b)
{
return a-b
}
</body>
</html>
document.write(famname.join() + "<br>")
document.write(famname.concat(famname2) + "<br>")
document.write(famname.concat(famname2,famname3) + "<br>")
document.write(famname.slice(1) + "<br>")
</script>
</body>
</html>
6. Array - splice()
Cara penggunaan splice() method.
<html>
<body>
<script type="text/javascript">
myCars=["BMW","Volvo","Saab","Ford"]
Page 48 / 197
http://www.hendra-jatnika.web.id
removed=myCars.splice(2,0,"Volkswagen")
document.write("After adding 1: " + myCars)
document.write("<br /><br />")
removed=myCars.splice(3,1)
document.write("After removing 1: " + myCars)
document.write("<br /><br />")
removed=myCars.splice(2,1,"Seat")
document.write("After replacing 1: " + myCars)
document.write("<br /><br />")
removed=myCars.splice(0,2,"Peugeot","Honda","Toyota")
document.write("After replacing 2 and adding 1: " + myCars)
</script>
</body>
</html>
Properties
Syntax: object.property_name
e t
a N
Property
d rDescription NN IE
constructor
e n
Contains the function that created an object's prototype 4 4
length
H
Returns the number of elements in the array 3 4
By
prototype Allows you to add properties to an array 3 4
Methods
Syntax: object.method_name()
Method Description NN IE
concat() Joins two or more arrays and returns a new array 4 4
join(delimiter) Puts all the elements of an array into a string separated 3 4
by a specified delimiter (comma is default)
pop() Removes and returns the last element of an array 4 5.5
push("element1","element2") Adds one or more elements to the end of an array and 4 5.5
returns the new length
reverse() Reverses the order of the elements in an array 3 4
shift() Removes and returns the first element of an array 4 5.5
slice(begin[,end]) Creates a new array from a selected section of an 4 4
existing array
sort() Sorts the elements of an array 3 4
splice(index,howmany[,el1,el2]) Adds and/or removes elements of an array 4 5.5
toSource() Returns a string that represents the source code of the 4.06 4
array
toString() Returns a string that represents the specified array and 3 4
Page 49 / 197
http://www.hendra-jatnika.web.id
its elements
unshift("element1","element2") Adds one or more elements to the beginning of an 4 5.5
array and returns the new length
valueOf() Returns the primitive value of an array 4 3
Date Object
Date object digunakan untuk bekerja dalam tanggal dan waktu.
Untuk membuat instance dari objek Date digunakan variable "d", sbb:
Kemudian semua metoda yang berkaitan dengan objek Date dapat di akses melalui variable "d" tersebut. Misal
untuk tampilan hari ini dapat ditulis sbb:.
d.getDate()
new Date(milliseconds)
new Date(dateString)
new Date(yr_num, mo_num, day_num [, hr_num, min_num, sec_num, ms_num])
e t
Beberapa contoh pembuatan objek Date:
a N
var d=new Date("October 12, 1988 13:14:00")
d r
var d=new Date("October 12, 1988")
e n
var
var
d=new
d=new
Date(88,09,12,13,14,00)
Date(88,09,12) H
var d=new Date(500)
By
Contoh-contoh:
1. Date
<html>
<body>
<script type="text/javascript">
var d = new Date()
document.write(d.getDate())
document.write(".")
document.write(d.getMonth() + 1)
document.write(".")
document.write(d.getFullYear())
</script>
</body>
</html>
2. Time
Mengemablikan waktu lokal: Jam, minit, dan detik. Untuk waktu GMT time gunakan getUTCHours,
getUTCMinutes dst.
Page 50 / 197
http://www.hendra-jatnika.web.id
<html>
<body>
<script type="text/javascript">
var d = new Date()
document.write(d.getHours())
document.write(".")
document.write(d.getMinutes())
document.write(".")
document.write(d.getSeconds())
</script>
</body>
</html>
3. Set date
Juga date atau time dapat diset kedalam date object, dengan menuliskan setDate, setHour dst. Contoh ini
memperagakan seting tahun penuh.
<html>
<body>
<script type="text/javascript">
var d = new Date()
d.setFullYear("1990")
document.write(d)
</script>
</body>
e t
</html>
a N
d r
4. UTC time
e n
getUTCDate method (Universal Coordinated Time ) yaitu waktu yang ditetapakan oleh World Time Standard.
H
By
<html>
<body>
<script type="text/javascript">
var d = new Date()
document.write(d.getUTCHours())
document.write(".")
document.write(d.getUTCMinutes())
document.write(".")
document.write(d.getUTCSeconds())
</script>
</body>
</html>
5. Display weekday
Contoh ini memperagakan penulisan hari dalam teks (sebagai ketentuan: Sunday→0, Monday→1 dst).
<html>
<body>
<script type="text/javascript">
var d=new Date()
var weekday=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")
document.write("Today is " + weekday[d.getDay()])
</script>
</body>
</html>
6. Display full date
Page 51 / 197
http://www.hendra-jatnika.web.id
<html>
<body>
<script type="text/javascript">
var d=new Date()
var weekday=new
Array("Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu")
var monthname=new
Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov
","Dec")
document.write(weekday[d.getDay()] + " ")
document.write(d.getDate() + ". ")
document.write(monthname[d.getMonth()] + " ")
document.write(d.getFullYear())
</script>
</body>
</html>
7. Display time
Jika pada contoh-contoh diatas tampilan waktu adalah waktu saat tersebut (tidak berobah seiring perobahan
waktu), maka pada contoh ini ditampilkan waktu yang berobah seiring perobahan waktu.
<html>
<head>
<script type="text/javascript">
var timer = null
function stop()
{
clearTimeout(timer)
e t
}
a N
function start()
d r
{
e n
var time = new Date()
var hours = time.getHours() H
By
var minutes = time.getMinutes()
minutes=((minutes < 10) ? "0" : "") + minutes
var seconds = time.getSeconds()
seconds=((seconds < 10) ? "0" : "") + seconds
var clock = hours + ":" + minutes + ":" + seconds
document.forms[0].display.value = clock
timer = setTimeout("start()",1000)
}
</script>
</head>
<body onload="start()" onunload="stop()">
<form>
<input type="text" name="display" size="20">
</form>
</body>
</html>
Properties:
NN: Netscape, IE: Internet Explorer
Syntax: object.property_name
Property Description NN IE
constructor Contains the function that created an object's prototype 4 4
prototype Allows addition of properties to a date 3 4
Page 52 / 197
http://www.hendra-jatnika.web.id
Methods
Syntax: object.method_name()
Method Description NN IE
Date() Returns a Date object 2 3
getDate() Returns the date of a Date object (from 1-31) 2 3
getDay() Returns the day of a Date object (from 0-6. 0=Sunday, 1=Monday, 2 3
etc.)
getMonth() Returns the month of a Date object (from 0-11. 0=January, 2 3
1=February, etc.)
getFullYear() Returns the year of a Date object (four digits) 4 4
getYear() Returns the year of a Date object (from 0-99). Use getFullYear 2 3
instead !!
getHours() Returns the hour of a Date object (from 0-23) 2 3
getMinutes() Returns the minute of a Date object (from 0-59) 2 3
getSeconds() Returns the second of a Date object (from 0-59) 2 3
getMilliseconds() Returns the millisecond of a Date object (from 0-999) 4 4
getTime() Returns the number of milliseconds since midnight 1/1-1970 2 3
getTimezoneOffset() Returns the time difference between the user's computer and GMT 2 3
getUTCDate() Returns the date of a Date object in universal (UTC) time 4 4
getUTCDay() Returns the day of a Date object in universal time 4 4
getUTCMonth() Returns the month of a Date object in universal time 4 4
getUTCFullYear()
et
Returns the four-digit year of a Date object in universal time 4 4
getUTCHours()
getUTCMinutes() r aN
Returns the hour of a Date object in universal time
Returns the minutes of a Date object in universal time
4
4
4
4
getUTCSeconds() n d
Returns the seconds of a Date object in universal time 4 4
getUTCMilliseconds()
He
Returns the milliseconds of a Date object in universal time 4 4
By
parse() Returns a string date value that holds the number of milliseconds 2 3
since January 01 1970 00:00:00
setDate() Sets the date of the month in the Date object (from 1-31) 2 3
setFullYear() Sets the year in the Date object (four digits) 4 4
setHours() Sets the hour in the Date object (from 0-23) 2 3
setMilliseconds() Sets the millisecond in the Date object (from 0-999) 4 4
setMinutes() Set the minute in the Date object (from 0-59) 2 3
setMonth() Sets the month in the Date object (from 0-11. 0=January, 2 3
1=February)
setSeconds() Sets the second in the Date object (from 0-59) 2 3
setTime() Sets the milliseconds after 1/1-1970 2 3
setYear() Sets the year in the Date object (00-99) 2 3
setUTCDate() Sets the date in the Date object, in universal time (from 1-31) 4 4
setUTCDay() Sets the day in the Date object, in universal time (from 0-6. 4 4
Sunday=0, Monday=1, etc.)
setUTCMonth() Sets the month in the Date object, in universal time (from 0-11. 4 4
0=January, 1=February)
setUTCFullYear() Sets the year in the Date object, in universal time (four digits) 4 4
setUTCHours() Sets the hour in the Date object, in universal time (from 0-23) 4 4
setUTCMinutes() Sets the minutes in the Date object, in universal time (from 0-59) 4 4
setUTCSeconds() Sets the seconds in the Date object, in universal time (from 0-59) 4 4
setUTCMilliseconds() Sets the milliseconds in the Date object, in universal time (from 0- 4 4
999)
Page 53 / 197
http://www.hendra-jatnika.web.id
toGMTString() Converts the Date object to a string, set to GMT time zone 2 3
toLocaleString() Converts the Date object to a string, set to the current time zone 2 3
toString() Converts the Date object to a string 2 4
e t
a N
d r
e n
H
By
Page 54 / 197
http://www.hendra-jatnika.web.id
JavaScript
Apa dan untuk apa JavaScript?
1
Page 55 / 197
http://www.hendra-jatnika.web.id
Kode JavaScript ditempatkan didalam file HTML, dengan demikian kode JavaScript
dapat dibuat dengan cara yang sama membuat HTML yaitu menggunakan editor teks
seperti WordPad ataupun NotePad.
Menangani Event
Sebagai contoh, berikut ini adalah contoh kombinasi HTML dan JavaScript
untuk memberi pesan bagi user.
e t
<HTML> a N
<BODY>
d r
<FORM>
e n
H
<INPUT TYPE=BUTTON VALUE="Klik disni"
By
onClick="alert('Terimakasih')">
</FORM>
</BODY>
</HTML>
Bentuk "onClick" adalah Event Handler, sebagai atribut dari tag <INPUT> dalam suatu
HTML. Sedangkan kode JavaScript berada dalam tanda petik yaitu:
"alert('Terimakasih')"
2
Page 56 / 197
http://www.hendra-jatnika.web.id
Kapitalisasi
JavaScript adalah case sensitive (HTML tidak case sensitive)
onclick="alert('You clicked the button!');"
Bagian yang digaris bawahi (onclick) adalah HTML
Sedangkan yang berda dalam tanda petik (quote) adalah JavaScript
Sehingga sering terlihat onclick di ganti huruf besar menjadi onClick untuk
memudahkan membacanya
Catatan:
Karena ada tanda petik didalam tanda petik maka diperlukan tanda petik
tunggal dan dobel
Menempatkan semicolon (;) pada setiap statemen adalah optional kecuali jika
lebih dari statemen dalam satu baris.
Event-event Umum
Keter: Kode diatas akan membuat teks Hello berwarna merah jika mouse dikenakan padanya
dan berwarna biru jika mouse dijauhkan
<img src="../Images/duke.gif"
width="55" height="68"
onMouseOver="src='../Images/duke_wave.gif';"
onMouseOut="src='../Images/duke.gif';">
3
Page 57 / 197
http://www.hendra-jatnika.web.id
links e n
MouseOver Links H User menggerakkan OnMouseOver
MouseOut By
Areas, links
kursor stas link
User menggerakkan OnMouseOut
kursosr menjauhi image
map atau link
Select Text fields, text areas User memilih field dari onSelect
elemen form input
Move Windows User atu script OnMove
mengerakkan window
Resize Windows User atau script me- OnResize
resize window
DragDrop Windows User men-drop suatu onDragDrop
object pada browser
window
Focus Windows dan semua User memberi fokus OnFocus
elemen form elemen input
Blur Windows dan semua User mengerakkan OnBlur
elemen form focus ke elemen lain
Reset Forms User meng-click Reset onReset
button
Submit Forms User meng-click Submit onSubmit
button
4
Page 58 / 197
http://www.hendra-jatnika.web.id
<html> <html>
<head> <head>
<script </head>
type="text/javascript">
function message() <body>
{
alert("This alert box was <script
called with the onload
e t
type="text/javascript">
event")
a N
document.write("This
}
d r message is written when
</script>
</head> e n the page loads")
</script>
H
By
<body onload="message()"> </body>
</html>
</body>
</html>
Script External
<html>
<head>
</head>
<body>
<script src="xxx.js">
</script>
<p>
The actual script is in an external script file called
"xxx.js".
</p>
</body>
</html>
5
Page 59 / 197
http://www.hendra-jatnika.web.id
Catatan:
1. <script type="text/javascript"> juga dapat dituliskan sebagai
<script language="javaScript">
2. Menagani Browser versi lama (tidak support JavaScript)
Browser versi lama umumnya tidak mendukung java script dan akan menampilkan
code script sebagai content. Untuk mencegah hal ini terjadi digunakan tag comment
(komentar) HTML seperti diperlihatkan berikut:
<script type="text/javascript">
<!--
some statements
//-->
</script>
3. Komentar
JavaScript mendukung dua bentuk format untuk komentar:
Komentar satu baris yang diawali dengan suatu double slash (//)
Komentar banyak baris yang diawali dengan suatu /* dan diakhiri dengan
suatu */
e t
a N
d r
e n
H
By
6
Page 60 / 197
http://www.hendra-jatnika.web.id
DAFTAR ISI
Pengenalan JavaScript
Menggunakan Javacript
Variabel dan Literal
Ekspresi dan Operator
Perintah Kendali dan Fungsi
Dasar dari Objek
Objek Built-In dan Fungsi
Netscape Objects
Objek form
Window dan Frame
Ringkasan
e t
a N
d r
e n
H
By
7
Page 61 / 197
http://www.hendra-jatnika.web.id
Walaupun Netscape Navigator akan mengolah semua teks dalam tag <SCRIPT> sebagai JavaScript, tetapi
adalah lebih baik melakukan deklarasi LANGUAGE yang menentukan jenis bahasa script yang digunakan.
karena ada beberapa bahasa script lainnya untuk HTML, mendeklarasikan jenis bahasa script adalah suatu
praktek yang baik. Marilah kita memulai dengan suatu program sederhana yang akan mencetak Hello
World.
Contoh :
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!-- Menyembunyikan script terhadap browser non-JavaScript
document.write("Hello world.")
// akhir dari penyembunyian -->
</SCRIPT>
</HEAD>
</HTML>
Hasil:
e t
a N
d r
e n
H
By
Contoh diatas menunjukkan program Javascript diketik diantara tag <HEAD> dan </HEAD>. Jika contoh
JavaScript diatas diketikkan diantara tag <BODY>, juga akan memiliki hasil yang sama. Tetapi karena bagian
heading akan dibaca terlebih dahulu dibandingan kan dengan bagian <BODY>, adalah praktek pemrograman
yang baik untuk menempatkan semua fungsi maupun variabel global pada bagian heading. Dan semua perintah
JavaScript yang berkaitan dengan dokumen ditempatkan pada bagian body HTML.
Perhatian : Tidak semua browser mampu memproses JavaScript, sehingga untuk menghindari kesalahan pada
browser tersebut, anda perlu mengetikkan script diantara tag komentar HTML:
8
Page 62 / 197
http://www.hendra-jatnika.web.id
Number, baik bilangan nyata (real) maupun bilangan bulat (integer) (contoh 4.156 dan 39)
String (contoh "ini adalah JavaScript")
Logical (Boolean) dengan nilai true dan false
Null, yang mana adalah keyword khusus yang mengawali nilai kosong.
Walaupun dengan jumlah tipe data yang sedikit, tetapi cukup untuk unjuk kerja JavaScript. Perlu diperhatikan
bahwa tidak ada perbedaan antara tipe integer dengan real, keduanya memiliki tipe yang sama yaitu number.
JavaScript tidak menyediakan tipe data khusus untuk data tanggal. Tetapi memiliki beberapa fungsi dan object
date yang dapat digunakan untuk melakukan manipulasi data tanggal.
Mendefinisikan Variabel
Aturan penamaan variabel pada JavaScript adalah nama harus dimulai dengan suatu huruf atau garis bawah (_)
dan huruf selanjutnya dapat berupa angka (0-9), huruf besar (A-Z) atau huruf kecil (a-z), garis bawah. Berikut
ini adalah contoh penamaan variabel yang sah:
First_Name
t99
_name
Catatan
JavaScript tidak memeriksa spelling dari nama variabel. Tetapi
e
memudahkan proses pembacaan dan pencarian kesalahan.t
programmer sebaiknya menggunakan spelling yang benar untuk
a N
d r
Batasan lainnya dalam pemberian nama variabel adalah tidak boleh sama dengan cadangan kata pada
n
JavaScript. Tabel 1 adalah daftar dari cadangan kata pada JavaScript.
e
H
Table 1. Cadangan kata pada JavaScript.
abstract
Byextends int super
boolean false interface switch
break final long synchronized
byte finally native this
case float new throw
catch for null throws
char function package transient
class goto private true
const if protected try
continue implements public var
default import return val
do in short while
double instanceof static with
else
Tidak semua kata dalam Table 1 digunakan oleh JavaScript dewasa ini; dan beberapa diantara dicadangkan
untuk pemakaian yang akan datang. Cadangan Kata tidak boleh d digunakan untuk nama variabel, nama fungsi,
nama metode, dan nama object
9
Page 63 / 197
http://www.hendra-jatnika.web.id
Variabel dalam JavaScript dapat menyimpan semua tipe data yang sah, dan tidak diperlukan suatu deklarasi tipe
data. Pada script yang sama, suatu variabel dapat diset ke type data yang berbeda dalam suatu deklarasi tunggal.
Berikut ini deklarasi variabel yang sah:
temperature =
Karena JavaScript sangat longgar tentang tipe, sehingga menyediakan beberapa fungsi untuk melakukan
manipulasi data string dan nilai numerik.
variabel Global
variabel Local
Variabel lokal digunakan didalam suatu fungsi dan ruang linkupnya terbatas pada fungsi tersebut. Untuk
mendeklarasikan suatu variabel lokal, harus diawali dengan var, seperti contoh berikut ini:
var MaxValue=0
e t
JavaScript mengganggap semua variabel yang tidak diawali dengan var adalah variabel global. Walaupun
d r
TIP
e n
H
Untuk memastikan fungsi mendapatkan nilai yang benar dari suatu
By
variabel global, deklarasikan semua variabel global tersebut pada awal
dari script.
Literal
Sebagai lawan dari variabel, literal mewakili nilai baku yang digunakan dalam JavaScript. JavaScript
mendukung literal berikut:
Integer literal
Floating point literal
Boolean literal
String literal
Special character
Integer dapat dalam basis desimal (basis 10), hexadesimal, dan oktal. Suatu nilai desimal adalah semua angka
yang tidak diawali dengan nol (seperti 4, 89, atau 57). Suatu angka yang diawali dengan nol, adalah berbasis
oktal (seperti 04, 065, atau 0145). Suatu bilangan dinyatakan dalam basis hexadesimal diawali dengan 0x atau
0X (seperti 0xff, 0X44, atau 0xAE).
Suatu literal floating-point terdiri dari komponen: suatu desimal bulat, suatu decimal berkoma (.), suatu desimal
pecahan, dan eksponen. (seperti 1.23 or 44.6389) atau dalam notasi scientific (3.6E-8, .4E12, or -2.7E12).
Setiap literal floating-point literal minimal memiliki satu digit dengan satu desimal atau eksponen.
Literal String dapat diapit oleh petik tunggal ( ' ) atau petik ganda ( " ). Tanda petik awal dan akhir harus sama,
seperti contoh berikut:
10
Page 64 / 197
http://www.hendra-jatnika.web.id
TIP
Ketika anda menulis event handle, apit string dengan petik tunggal,
karena petik ganda dibatasi untuk nilai atribut pada HTML
Literal string dapat juga mengandung karakter khusus untuk kendali baris Table 2 adalah daftar dari karakter
khusus dan fungsi-fungsinya.
Tanda backslash (\) adalah karakter escape pada JavaScript. Ketika digunakan pada akhir dari suatu baris, akan
berfungsi sebagai character penyambung baris. Ketika diikuti oleh karakter lain, karakter escape tersebut akan
kehilangan fungsi khususnya. Dalam JavaScript, programmer mengunakan backslash untuk escape backslash
lainnya, suatu petik tunggal, dan suatu petik ganda.
e t
Ekspresi dan Operator a N
d r
e n
Literal dan variabel dihubungkan oleh operator, hasil dari pernyataan tersebut adalah ekspresi. JavaScript
H
menyediakan berbagai operator yang memungkinkan programmer menulis sejumlah ekspresi dari yang paling
By
sederhana sampai yang paling sulit.
Assignment operator
Arithmetic operator
Bitwise operator
Logical operator
Comparison operator
String operator
JavaScript memiliki operator binari maupun unari. Suatu operator binari memiliki format.
operand operator
atau
operator operand
Sebagai contoh ekspresi mengunakan operator unari adalah ++y atau y++.
11
Page 65 / 197
http://www.hendra-jatnika.web.id
Assignment Operator
Operator pemberi nilai (=) adalah suatu operator binari yang digunakan untuk memberi nilai ke operand di sisi
kiri (biasanya berupa suatu variabel) yang didasarkan pada nilai operand sebelah kanan (seperti FirstName =
"John" atau x = y * 9). Table 3 adalah daftar singkat operator pemberi nilai.
By
numerik baik dalam literal maupun variabel. JavaScript mendukung operator standard aritmatika untuk
penjumlahan (+), pengurangan (-), perkalian (*), dan pembagian (/). Juga memiliki operator modulus (%),
increment (++), decrement (--), dan unary negation (-).
Operator modulus (%) adalah suatu operator binary yang mengembalikan nilai sisa dari suatu pembagian bulat
operand1 terhadap operand2. Sebagai contoh, hasil dari 27 % 6 adalah 4.
Operator increment unary adalah menambah nilai satu ke variabel operand, sedangkan operator decrement unary
mengurangi satu dari padanya. Bagaimanapun, nilai yang dikembalikan tergantung dari posisi operator terhadap
operand Jika operator berada didepan (++x atau --x), nilai yang dikembalikan adalah x+1 atau x-1. Ketika
operator dibelakang(x++ or x--), nilai x dikembalikan sebelum ditambah atau dikurang.
Operator khusus unari arithmetic adalah operator unari negation operator. Ia membalikan tanda dari nilai yang
diberikan pada suatu variabel. Sebagai contoh, jika x = -7, -x mengubah nilai menjadi 7.
Bitwise Operator
Untuk programmer yang perlu menangani bit. JavaScript menyediakan satu set dari operator bitwise. Untuk
operator ini, JavaScript melakukan konversi terhadap operand menjadi integer 32-bit sebelum melakukan
operasi padanya. Operator logika bitwise adalah
Bitwise AND (&), akan mengembalikan nilai dari logika AND antara sepasang bit. Sebagai contoh ,
0x0f & 0x0a mengembalikan 0x0a.
Bitwise OR (|), akan mengembalikan nilai dari logika OR antara setiap pasangan dari bit. Sebagai
contoh, 0x05 | 0x0a mengembalikan 0x0f.
Bitwise XOR (^), akan mengembalikan nilai dari logika exclusive OR between antara tiap pasangan
bit. Sebagai contoh, 0x0f ^ 0x0a mengembalikan 0x05.
12
Page 66 / 197
http://www.hendra-jatnika.web.id
JavaScript juga menyediakan satu set bitwise untuk operasi shift operand1 terhadap jumlah yang ditentukan di
operand2. Operand ini adalah
Shift left (<<), akan mengeser bit ke kiri dengan jumlah tertentu. Bit yang melewati batas kiri akan
diabaikan, dan suatu bit nol akan digeser dari kanan. Sebagai contoh, 0x0f << 2 mengembalikan
0x3c.
Sign propagating shift right (>>) mempertahankan bit tanda dari nilai ketika melakukan geser ke kanan
sesuai dengan jumlah yang ditentukan. Bit yang tergeser melewati bata kanan akan diabaikan, kecuali
bit tanda, bit nol akan digeser dari kiri.. Sebagai contoh, 10 >> 2 mengembalikan 2 dan -10 >> 2
mengembalikan -2.
Zero-fill right shift (>>>) sama seperti >>, cuma tidak mempertahankan bit tanda ketika dilakukan
pergeseran sesuai dengan jumlah yang ditentukan.
Logical Operator
Operator logika membutuhkan operand dengan nilai Boolean (true atau false) dan mereka akan mengembalikan
suatu nilai logika. Operator logika adalah sebagai berikut :
Operator logika NOT adalah suatu unary operator yang mempertahankan nilai ekspresi.
Comparison Operator
e t
Operator perbandingan diterapkan pada perbandingan pada data numerik dan data string serta tidak dapat
a N
dilakukan pada nilai Boolean. Masing-masing operand harus memiliki tipe yang sama: nemerik dibandingkan
dengan numerik atau string dengan string. Hasil dari perbandingan adalah sautu nilai Boolean. Operator
perbandingan adalah:
d r
e n
Equal (==)
Not equal (!=)
H
Greater than (>)
By
Greater than or equal to (>=)
Less than (<)
Less than or equal to (<=)
JavaScript juga mendukung ekspresi secara kondisi (conditional expression) yang mana berbentuk.
Jika kondisi adalah benar, ekspresi memiliki dari true_value. Sebaliknya memiliki nilai dari
false_value. Seperti saudaranya yang berbasis bahasa C, ekpresi kondisi adalah ekspresi standard dan dapat
digunakan dimana saja, dan dapat dilihat sebagai berikut :
String Operator
Operator string (+) mengabung dua nilai string dan mengembalikan satu string dimana merupakan hasil
gabungan dari keduanya. Sebagai contoh :
"Java" + "Script"
13
Page 67 / 197
http://www.hendra-jatnika.web.id
Menghasilkan
"JavaScript"
Operator shorthand += mengabung string kiri dengan string dikanan operand dan memberikan nilai baru pada
operand disebelah kiri.
Urutan operasi
Dalam ekspresi yang kompleks dimana melibatkan lebih dari satu operator, urutan operasi dari operator
menentukan nilai hasil evaluasi. Dengan menggunakan tanda kurung, programmer dapat mengatur aturan
tersebut. Table .4 adalah urutan prioritas operasi dari yang paling rendah sampai yang paling tinggi.
Keterangan Operator
Assignment = += -= *= /= %= <<= >>= >>>= &= ^= |=
Conditional ?:
Logical OR ||
Logical AND &&
Bitwise OR |
Bitwise XOR ^ e t
Bitwise AND &
a N
Equality == !=
d r
Relational
e
< <= > >=n
Bitwise shift H
<< >> >>>
Addition/subtraction
Multiply/divide
By +-
*/%
Negation/increment ! ~ - ++ -
Call, member () []
Walaupun semua kode harus ditulis dalam penanganan event, tetapi hal ini adalah praktek pemrograman yang
kurang baik. Sebagai pengantinya, gunakan fungsi, kode akan menjadi lebih modular dan dapat digunakan
kembali (reuseable).
Perintah kondisi
Sebagai tambahan terhadap ekspresi kondisi yang telah dijelaskan bagian sebelumnya. JavaScript memiliki
suatu perintah kondisi if. Tata cara penulisan dari perintah kondisi tersebut adalah sebagai berikut:
if (condition) {
14
Page 68 / 197
http://www.hendra-jatnika.web.id
statements1 }
[else {
statements2}]
condition adalah ekspresi JavaScript yang mana hasil evaluasinya memiliki nilai Boolean true atau false.
contoh pemakaian statement if:
if (n>3) {
status = true
if (j != n) j = 0 }
else j = n
Perhatian
Bagi programmer C harus berhati-hati dengan evaluasi kondisi pada
JavaScript. Suatu kondisi numerik yang mengasilkan nol adalah tidak
sama dengan suatu Boolean true pada JavaScript, dan sebaliknya suatu
nilai bukan nol tidak sema dengan Boolean false. Pada JavaScript hasil
dari suatu kondisi harus data type Boolean.
e t
N
Jika hanya suatu perintah tunggal, tanda kurawal tidak diperlukan. Contoh berikut adalah perintah yang benar:
a
d r
if (a==b) j=0
e n
else j=1 H
Perintah Perulangan
By
JavaScript mendukung dua struktur loop; perintah for dan perintah while. Untuk control pada struktur loop,
JavaScript menyediakan perintah break dan continue.
Perintah for
Perintah for pada JavaScript sama dengan yang ada di Java dan C. Perintah for mengulang suatu loop sampai
kondisi menghasilkan evaluasi true atau loop keluar dengan perintah break . Syntax untuk perintah for
adalah sebagai berikut :
statements
15
Page 69 / 197
http://www.hendra-jatnika.web.id
2. Kemudian interpreter memeriksa condition. Jika true, kendali dilanjutkan ke langkah selanjutnya.
Jika false, kendali diarahkan ke perintah setelah perulangan.
3. Kemudian interpreter menjalankan increment-expression, yang mana melakukan update
terhadap variabel-variabel yang digunakan untuk kendali perulangan.
4. Kemudian statement dijalankan dan, jika ditemukan suatu break atau continue, kendali kembali ke
langkah 2.
Contoh :
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
sq=i*i
</SCRIPT>
e t
</HEAD>
a N
<BODY>
</BODY> d r
</HTML>
e n
H
By
Hasil :
number: 1 square: 1
number: 2 square: 4
number: 3 square: 9
number: 4 square: 16
number: 5 square: 25
number: 6 square: 36
number: 7 square: 49
number: 8 square: 64
number: 9 square: 81
number: 10 square: 100
Perintah while
Perintah while terus mengulangi loop selama kondisi memiliki nilai true. Syntax untuk perintah while adalah
sebagai berikut :
while (condition) {
statements
16
Page 70 / 197
http://www.hendra-jatnika.web.id
Test kondisi terjadi pada perulangan while yang pertama kali dan pada akhir dari setiap loop. Ketika hasil test
mengembalikan false, kendali dilewatkan ke perintah berikutnya setelah loop. Perintah for yang diubah ke
suatu while loop.
Contoh:
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
i=1
while (i<=10) {
sq=i*i
i++
</SCRIPT>
e t
</HEAD>
a N
<BODY>
d r
</BODY>
</HTML>
e n
H
Hasil:
number: 1 square: 1
By
number: 2 square: 4
number: 3 square: 9
number: 4 square: 16
number: 5 square: 25
number: 6 square: 36
number: 7 square: 49
number: 8 square: 64
number: 9 square: 81
number: 10 square: 100
Perintah break
Perintah break menghentikan for atau while loop dan mengembalikan kendali ke perintah berikutnya yang
mengikuti loop. Contoh berikut menggambarkan bagaimana menggunakan perintah break:
i=0
while (i<10) {
if (i==3)
break
i++
17
Page 71 / 197
http://www.hendra-jatnika.web.id
Perintah continue
Seperti perintah break, perintah continue menghentikan interasi tersebut untuk suatu for atau while
loop; Tetapi tidak keluar dari loop; Tetapi melakukan interasi berikutnya.
i=0
while (i<10) {
if (i==3)
continue
i++
e t
Perintah function
a N
d r
Suatu function adalah sekumpulan dari perintah JavaScript yang akan mengerjakan tugas tertentu. Fungsi ini
n
dapat dipanggil dari segala titik pada dokumen tersebut dan dipanggil dari event. Format dari perintah
e
function adalah sebagai berikut:
H
By
function FunctionName(argument list) {
statements
}
Contoh:
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript"
function DisplayIt(LineToDisplay) {
document.write(LineToDisplay + "<BR>")
</SCRIPT>
</HEAD>
<BODY>
18
Page 72 / 197
http://www.hendra-jatnika.web.id
<SCRIPT LANGUAGE="JavaScript"
<!-- hide it
LineToDisplay("Hello World")
</SCRIPT>
</BODY>
</HTML>
TIP
Karena browser membaca perintah tersebut diapit oleh
<HEAD>...</HEAD> duluan; adalah praktek yang baik untuk
memesan semua variabel global dan semua fungsi pada HEAD dari
dokumen. Hal ini mencegah kesalahan seperti non-initialized variables
dan undefined functions
Argumen dari suatu fungsi dapat berupa sembarang tipe data atau objek JavaScript. Objek array
functionName.argument[i] dan functionName.arguments.length mengandung nilai jumlah
argumen yang dikirim ke fungsi, argumen acuan dengan mendeklarasikan nama-nama variabel. Hal ini
memungkinkan sejumlah argumen dilewatkan ke fungsi sebagai suatu argument array. Contoh berikut
menunjukkan pemakaian dari suatu variable argument list.
Contoh :
<HTML>
e t
<HEAD>
a N
<SCRIPT LANGUAGE="JavaScript">
d r
<!-- menyembunyikan e n
H
UnorderList="UL"
By
function DisplayList(ListType) { // menampilkan
variabel list
document.write("LI" + DisplayList.arguments[i])
return true
</SCRIPT>
19
Page 73 / 197
http://www.hendra-jatnika.web.id
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript"
<!-- menyembunyikan
document.write("<P>List Display</P>")
else
// unhide it -->
</SCRIPT>
</BODY>
</HTML>
Contoh diatas menggambarkan beberapa hal yang penting dari suatu fungsi. Suatu variabel global diinisialisasi
pada bagian <HEAD>. Perintah var mendeklarasikan i sebagai suatu variabel lokal pada fungsi. Juga
ditunjukkan bagaimana perintah return dapat digunakan untuk memastikan fungsi dijalankan dengan baik.
Perintah return juga dapat mengembalikan string atau nilai numerik, sebagaimana yang ditunjukkan oleh contoh
dibawah ini:
e t
a N
function RetExam(a, b) {
d r
var x=0
e n
H
By
x = a+b
return x
TestResult=RetExam(5, 7)
Komentar
Komentar satu baris yang diawali dengan suatu double slash (//)
Komentar banyak baris yang diawali dengan suatu /* dan diakhiri dengan suatu */
Komentar single-line, dari C++, memperlakukan semua yang dari double slash ke belakang sebagai suatu
komentar, berikut ini adalah contoh yang sah untuk suatu komentar single-line :
// this is a comment
Komentar banyak baris mengikuti aturan pada C dan dapat digunakan untuk menandai perintah JavaScript,
sebagaimana yang ditunjukkan oleh contoh sebelumnya, adalah sutu komentar HTML, baris terakhir
membutuhkan dua slash untuk menjaga JavaScript dapat menginterprestasikan baris tersebut.
20
Page 74 / 197
http://www.hendra-jatnika.web.id
Tetapi class pada JavaScript menyediakan properti dan metode untuk membuat objek.
Berikut ini adalah notasi yang digunakan oleh JavaScript untuk menggambarkan suatu objek dan propertinya:
ObjekName.PropertyName
mydog.breed="small mut"
mydog.age=5
mydog.weight=25
t
Objek juga dapat menggunakan acuan array dengan menggunakan nama propertinya sebagai index:
e
a N
mydog["breed"]="small mut"
d r
mydog["age"]=5
e n
H
By
mydog["weight"]=25
mydog[0]="small mut"
mydog[1]=5
mydog[2]=25
Defining Metodes
Suatu fungsi yang berasosiasikan objek acuan adalah metode. format berikut meng-asosiasikan fungsi dengan
suatu objek:
ObjekName.MetodeName = function_name
ObjekName.MetodeName(parameters);
21
Page 75 / 197
http://www.hendra-jatnika.web.id
Untuk melakukan manipulasi pada objek membutuhkan fasilitas tambahan dari JavaScript yaitu dengan perintah
for...in , perintah with , operator new, dan kata kunci this.
Perintah for...in
Perintah for...in menyediakan suatu mekanisme perulangan untuk iterasi melalui semua properti dari suatu
objek. Dengan format adalah sebagai berikut :
statements
Contoh berikut mengunakan perintah ini untuk menampilkan semua properti dalam suatu objek dan nilai
asosiasinya:
e t
result += obj_name + "." + i " = " + obj[i] + "<BR>"
a N
}
d r
return result
e n
H
By
PropList = ListProperti(mydog, "mydog")
Pada contoh sebelumnya, variabel i adalah nama dari property, kemudian mengindeks objek dengan
menggunakan property name_obj[i].
Perintah with
Pada beberapa situasi suatu objek perlu dibuat acuan beberapa kali. Perintah with membuat acuan ke suatu
objek default yang berada dalam kurung. Tata cara penulisannya adalah sebagai berikut:
with (ObjekName) {
statements
var r =
var x =
with (Math) {
22
Page 76 / 197
http://www.hendra-jatnika.web.id
r = p / (1 - cos(a))
Operand new
Untuk suatu tipe objek user-defined, operand new berfungsi membuat suatu instance baru
dari objek. Tata cara penulisannya adalah sebagai berikut:
this mengacu pada objek yang sekarang. Pada bagian selanjutnya akan ditunjukkan
bagaimana pemakaian kata kunci ini dalam penulisan function dan metode.
Walaupun JavaScript memiliki sejumlah besar objek yang telah didefinisikan, developer
dapat membuat objeknya sendiri. Untuk membuat suatu objek baru diperlukan dua langkah
yaitu:
e t
a N
d r
1. Mendefinisikan jenis objek dengan membuat suatu fungsi.
2. Membuat instances dari objek tersebut dengan menggunakan operand new.
e n
H
Fungsi tersebut mendefinisikan jenis objek, properti, dan metode. Sebagai contoh untuk
membuat suatu objek dog:
By
function dog(breed, age, weight) {
this.breed = breed;
this.age = age;
this.weight = weight;
Untuk menggunakan fungsi diatas, operand new diperlukan untuk mendefinisikan suatu
instance baru untuk objek tersebut. Sebagai contoh:
Selain type data yang umum (string, numeric, and Boolean), objek yang lain dapat juga
menjadi properti dari suatu objek. Contoh menambah suatu nomor izin pada objek jenis dog,
nomor izib ini juga mengacu pada objek lain.
this.owner = owner;
this.phone_number = phone.number;
Jenis Objek dog perlu dimodifikasi untuk mengikutsertakan informasi baru tersebut:
this.breed = breed;
this.age = age;
this.weight = weight;
this.license = license;
Mendefinisikan Array
Tidak seperti bahasa lainnya, Java script tidak memiliki suatu tipe data array. Tetapi
bagaimanapun, fungsi yang sama dapat dengan membentuk suatu objek untuk melakukan
emulasi suatu array. Langkah pertama untuk mendefinsikan suatu objek array:
function MakeArray(n) {
24
Page 78 / 197
http://www.hendra-jatnika.web.id
this.length = n;
this[i] = 0;
return this
Ketika anda memberikan nilai pada suatu elemen array, hal tersebut menyerupai memberi
nilai pada suatu type data array. Perbedaannya adalah array ini dimulai dari satu dan bukan
nol, karena nol mendefinisikan panjang dari array:
ExmpArray[1] = "test1"
e t
Objek dan Fungsi Built-In a N
d r
e n
Objek dan fungsi yang akan dijelaskan pada bagian ini adalah bagian dari lingkungan
H
JavaScript, selanjutnya sangat tergantung pada jenis web browser. Adapun objek dan fungsi
By
tersebut adalah sebagai berikut:
Objek String
Suatu string yang dipetik adalah suatu variabel string atau suatu properti string dari suatu
objek, segala sesuatu yang ditempatkan diantara petik adalah suatu string. Ada dua cara untuk
menggunakan suatu objek string:
1. stringName.propertyName
2. stringName.metodeName(parameters)
Object string hanya memiliki sebuah properti -length. Karena berupa properti, berikut ini
adalah acuan yang benar:
StringLength = stringVariable.length;
25
Page 79 / 197
http://www.hendra-jatnika.web.id
StringLength = mydog.name.length;
Sejumlah besar metode adalah asosiasi dengan objek string. Disamping fungsi manipulasi
string yang normal, banyak diantaranya berfungsi membungkus string diantara tag HTML.
Berikut ini adalah daftar dari metode object string:
document.write("Other Links".anchor("other_links"));
Objek Math
Object Math menyediakan suatu himpunan dari nilai-nilai standar matematika dan metode-
metode yang argumennya berupa himpunan dari operator matematika yang disediakan
dengan JavaScript. Tidak seperti object lainnya, object Math tidak membutuhkan suatu
26
Page 80 / 197
http://www.hendra-jatnika.web.id
instance dari object sebelum menggunakan metode objek math tersebut. Untuk memudahkan
pemasukkan nama dan pembacaan, metode Math sering diikat dengan perintah with. Syntax
untuk object Math adalah sebagai berikut:
1. Math.propertyName
2. Math.metodeName(parameters)
Object Math memiliki delapan buah properti. Properti-properti ini ini mendefinisikan
berbagai konstanta matematika. Tabel 5. menunjukkan properti-properti tersebut dan nilai
perkiraannya.
random(). Hanya terdapat pada paltforms UNIX, yang mana mengembalikan suatu
pseudorandom number antara nol dan satu. Pada Netscape Navigator 3.0, metode
random() metode dapat digunakan pada semua platforms.
round(number). Mengembalikan nilai dari number yang dibulatkan kebilangan
integer terdekat.
sin(number). Mengembalikan nilai sinus dari sudut dalam radian.
sqrt(number). Mengembalikan nilai akar dari bilangan non negatif, Jika diluar
jangkauan akan dikembalikan nol.
tan(number). Mengembalikan nilai tangen dari sudut dalam radian.
Objek Date
Walaupun JavaScript tidak menyediakan suatu type data Date, tetapi menyediakan suatu
objek Date yang mana menangani informasi date dan time. Semua tanggal adalah jumlah
milidetik sejak January 1, 1970, 00:00:00. Akibatnya semua tanggal sebelum 1970 adalah
tidak sah.
Objek Date membutuhkan suatu instance dari objek Date yang berkaitan dengan pemakaian
metode-metodenya. Instance dapat berupa suatu objek baru atau properti dari objek yang ada.
Ada empat cara untuk membentuk instance baru:
dateObjectName.metodeName(parameters)
Pengecualiaanya adalah UTC dan metode parse, yang mana adalah metode status dan
pemakaiannya
Date.UTC(parameters)
Date.parse(parameters)
Table 6 menjelaskan nilai yang akan dikembalikan oleh berbagai perintah get.
28
Page 82 / 197
http://www.hendra-jatnika.web.id
Selain dapat menerima berbagai informasi dari object Date, metode pada Tabel 7
menunjukkan bagaimana mengubah informasi date.
By
Dua metode tambahan yang dapat digunakan untuk melakukan konvesi data tanggal ke suatu
nilai string, adalah sebagai berikut:
Objek Date juga memiliki dua metode statik untuk menangani string; hal tersebut memiliki
format Date.metode(). Metode-metode ini adalah sebagai berikut:
Fungsi Built-In
JavaScript mendukung beberapa function built-in yang mana tidak berkaitan dengan object
tertentu. Berikut ini adalah function-function built-in adalah sebagai berikut:
29
Page 83 / 197
http://www.hendra-jatnika.web.id
var x =
var y =
document.write(eval(z), "<BR>")
Objek Netscape By
Sebagai tambahan kepada objek-objek JavaScript dan metode, Pengembang halaman Web
dapat mengakses objek-objek dan metode dalam Netscape browser. Bagian ini akan
membahas Objek Netscape Navigator dan metode-metodenya.
Hirarki ini penting untuk membuat acuan kepada object dan propertinya. Turunan dari suatu
object adalah properti dari objek orang tuanya. Karena semua objek adalah merupakan
turunan dari objek window , sehingga objek window sendirinya tidak memiliki acuan ke
objek maupun properti apapun. Tetapi bagaimanapun, acuan ke suatu dokumen pada window
lain membutuhkan tambahan nama window kepada object acuan-nya.
30
Page 84 / 197
http://www.hendra-jatnika.web.id
e t
N
Sesuai dengan hal ini, maka instance dari suatu objek ada setelah proses dilakukan terhadap
a
d r
baris HTML yang menghasilkan instance tersebut. Dengan kata lain JavaScript tidak dapat
mengacu pada suatu objek HTML seperti form, atau menjalankan suatu fungsi sampai
e n
browser memproses perintah tersebut. Sebagai contoh, JavaScript tidak dapat mengacu pada
H
suatu objek form sampai browser memproses HTML untuk form tersebut. Demikian juga
By
dengan proses perubahan properti, setelah browser menggunakan properti dalam
menghasilkan layout window, maka perubahan properti setelah itu tidak memiliki efek
terhadap tampilannya.
Walaupun nampaknya keterbatasan tersebut berat, namun dengan pengertian yang baik
terhadap HTML proses dan JavaScript akan mengurangi frustasi. Prinsip utama yang perlu
diingat bahwa suatu dokumen HTML diproses secara berurut dan JavaScript adalah bagian
dari proses secara berurut tersebut.
Objek Window
Objek window adalah orang tua dari semua object. Hal tersebut termasuk semua window dan
frame yang berada dalam suatu. Ketika browser mulai memuat suatu dokumen HTML, hal
tersebut dimulai dengan suatu instance dari objek window. Jika dokumen HTML membuat
suatu frame, informasi dari frame tersebut tersimpan dalam suatu objek frame array. Dengan
kata lain, membuka suatu window akan menghasilkan suatu anak dari objek window.
Kehebatan dari JavaScript adalah terletak pada kemampuan untuk melakukan utilisasi
properti dan metode dari objek window.
objek Location
objek History
objek Document
31
Page 85 / 197
http://www.hendra-jatnika.web.id
Diantara ketiga objek tersebut, document adalah objek yang paling penting dalam hirarki
tersebut. Objek document itu sendirinya mengacu kepada objek lain. Hal lain yang penting
dari hal ini adalah sebagai berikut:
objek form
objek anchor
objek link
Objek location
Objek location mengandung informasi tentang URL sekarang. Acuannya ke objek tersebut
adalah sebagai berikut:
[windowReference.]location[.propertyName]
Properti dari object location mengacu pada bagian individual dari URL:
CATATAN
t
Objek location dan properti location dari objek
e
a N
dokumen (document.location) memiliki tujuan yang
berbeda. Objek location dapat berubah, tetapi properti
location tidak dapat berubah. d r
e n
H
Properti dari objek location adalah sebagai berikut:
protocol. protocol
By menentukan metode access dari URL.
hostname. hostname mengandung nama host dan domain, atau alamat IP, dari host
tujuan.
port. port adalah TCP/IP port, jika kosong akan digunakan port default dari protocol
tersebut.
pathname. pathname meliputi path resource pada host tujuan.
search. property search adalah string yang dimulai dengan tanda ? yang digunakan
untuk script CGI.
hash. property hash adalah suatu string yang dimulai dengan tanda hash(#) dan
diikuti dengan suatu anchor name.
href. property ini merupakan keseluruhan dari URL. Jika acuan dibuat
ke[windowName.]location, property href menjadi asumsi.
host. Property ini ekivalen dengan hostname:port.
CATATAN
Walaupun JavaScript memungkinkan modifikasi pada
properti individual, praktek pemrograman yang umum
adalah mengubah properti href. Pendekatan ini mencegah
hasil error dari browser sebelum akses URL belum berubah
secara keseluruhan.
32
Page 86 / 197
http://www.hendra-jatnika.web.id
Objek History
Akses ke objek History adalah topik yang kontroversial karena memungkinkan script
mengirim history kembali ke server. Untuk mencegah pemakaian yang menyimpang,
Netscape Navigator 2.01 keatas telah menghilangkan object ini.
Objek document
Object document menyimpan properti, objek, dan metode yang mewakili dokumen. Hal
tersebut mengacu pada bagian dokumen HTML yang didefinsikan oleh tag <BODY></BODY>.
Bagian ini mendiskusikan komponen dari objek dokumen, kecuali objek form (yang akan
dibahas pada bagian berikutnya).
Option HTML ke tag <BODY> mendefinisikan properti objek document. JavaScript mengacu
pada semua properti ini, kecuali untuk image background.
CATATAN
String yang diperlukan untuk mengubah properti color
adalah dalam format document.colorProperty =
"#RRGGBB" atau document.colorproperty="colorName".
Property color lainnya didefinisikan dalam tag
<HEAD></HEAD> yang mendahului tag <BODY>. e t
a N
Properti color untuk object
d r
document adalah sebagai berikut:
e n
H
bgColor. Property ini menentukan warna latarbelakang dari dokumen. Property
By
bgColor secara langsung mengupdate tampilan.
fgColor. Property ini menentukan warna text dari dokumen. Setelah browser
menyelesaikan layout dari dokumen HTML., browser mengabaikan perubahan pada
propery ini. Kecuali tag <FONT> atau metode fontcolor metode menyediakan suatu
mekanisme alternatif untuk mengubah warna text.
linkColor. linkColor mewakili warna dari suatu link yang didefinsikan oleh HREF.
alinkColor. property control warna dari suatu active link. Dengan kata lain, hal
tersebut adalah warna dari link ketika terpilih.
vlinkColor. Situs yang pernah dikunjungi, browser menampilkan warna untuk link
tersebut.
Contoh:
<FORM>
<SELECT onChange=
"document.bgColor=this.options[this.selectedIndex].value">
<OPTION VALUE="40E0D0"> Torquoise
<OPTION VALUE="2E8B57"> Sea Green
<OPTION VALUE="87CEEB"> Sky Blue
<OPTION VALUE="F4A460"> Sandy Brown
<OPTION VALUE="FFF0F5"> Lavender Blush
<OPTION VALUE="FF1493"> Deep Pink
<OPTION VALUE="FFFFFF" SELECTED> White
33
Page 87 / 197
http://www.hendra-jatnika.web.id
</SELECT>
</FORM>
Hasil :
White
Object document juga mengandung properti berikut yang tidak berkaitan dengan warna:
Contoh:
<SCRIPT LANGUAGE="JavaScript">
e t
<!--
a N
document.write("Update terakhir :");
d r
document.write(document.lastModified);
// -->
e n
</SCRIPT>
H
Hasil: By
Update terakhir :01/31/2001 10:57:42
Object anchors mengandung suatu array dari semua anchors yang dideklarasikan dengan
atribut NAME dari tag <A> </A>. Array tersebut dimulai dari 0 dan berlanjut sampai
document.anchors.length - 1. Nilai dari document.anchors[index] adalah null.
TIP
Sebelum menggunakannya untuk memberikan nilai seperti
location.hash, adalah mungkin untuk memeriksa
keabsahan dari anchor dengan membandingkannya dengan
panjang array; anda menggunakan bilangan berurut untuk
menentukan anchors
34
Page 88 / 197
http://www.hendra-jatnika.web.id
Objek link
Array link mengandung object link yang didefinisikan oleh tag <A></A> atau dengan metode
link. Array tersebut meliputi objek untuk atribut HREF dan NAME. Dengan tambahan ke atribut
TARGET, properti dari masing-masing object link adalah identik dengan object location.
CATATAN
link array adalah suatu array read-only. Entries tambahan
ditambahkan dengan tag <A></A>. Metode link melakukan
modifikasi terhadap isi dalam array link
Object link memiliki dua event handler: onClick dan onMouseOver. Bagian ini disebut
sebagai "The Form Object," pada bagian selanjutnya di bab ini, menggambarkan bagaimana
mengunakan event handler.
Properti cookie
Property cookie mengandung suatu nilai string dari isi cookier dari file cookies.txt untuk
dokumen tersebut. Untuk suatu keterangan lengkap tentang bagaimana menggunakan
cookies, lihat bagian Netscape cookie specification. Metode substring, charAt, indexOf, dan
lastIndexOf dapat digunakan untuk memisahkan string cookie.
CATATAN
35
Page 89 / 197
http://www.hendra-jatnika.web.id
Objek Form
HTML tag <FORM></FORM> adalah fasilitas input data oleh pemakai, dan output data variabel
kepada pemakai. Input oleh pemakai memiliki efek pemilihan pada sisi klien yang dapat
dikirm ke server. Pada sisi lain, data variabel seperti marquees dapat ditampilkan pada form.
Pada sisi input, event handle adalah fasilitas untuk membangkitkan rutin JavaScript untuk
melakukan aktifitas pada proses edit data seperti validasi. Pada sisi output, JavaScript
memegang peranan penting dalam mengatur bagaimana data ditampilkan.
penanganan events
Event adalah hasil dari aksi pemakai, seperti klik pada suatu tombol mouse, checking pada
suatu kotak, dan pengiriman form. Penanganan Event didefinsikan dalam tag HTML
sepanjang JavaScript berkaitan dengan event tersebut. Berikut ini adalah contoh yang
merupakan kode dari suatu penanganan event.
e t
<INPUT TYPE="button" VALUE="Submit"
a N
onClick="validate(this.form)">
d r
e n
Pada contoh sebelumnya, kata kunci this mengacu pada objek tersebut, yang mana adalah
H
objek button. Dengan menyebutkan this.form, adalah acuan ke objek form yang
By
mengandung button tersebut. Ketika contoh sebelumnnya menjalankan suatu fungsi, perintah
JavaScript juga sah. Kalau lebih dari satu perintah, tiap perintah harus dipisahkan dengan
suatu titik koma.
TIP
Praktek pemrograman yang baik adalah menggunakan
fungsi karena mereka membuat kode lebih mudah dibaca
dan dapat digunakan kembali.
NOTE
Sampai suatu dokumen HTML selesai di muat ke window
yang mengandung tag <BODY></BODY>, suatu window
tidak mengandung penanganan event.
Berikut ini adalah daftar dari penanganan event yang didukung oleh JavaSCript:
36
Page 90 / 197
http://www.hendra-jatnika.web.id
onLoad. event ini terjadi ketika browser selesai memuat suatu dokumen atau semua
frame didalam tag <FRAMESET>.
onMouseOver. event ini terjadi ketika mouse bergerak melewati object dari luar object
tersebut. Rutin JavaScript harus mengembalikan true untuk status dan properti
defaultStatus yang ditentukan..
onSelect. event ini terjadi ketika pemakai melakukan select text pada text area..
onSubmit. terjadi ketika user submit suatu form. Jika JavaScript mengembalikan
false, form tersebut tidak akan di submit, nilai lainnya atau tidak ada nilai balik,
membuat form di submit.
onUnload. event ini terjadi ketika dokument di exit.
Penanganan Event adalah bagian dari berbagai object. Beberapa object mendukung lebih dari
satu penanganan event, dan beberapa penanganan event terjadi pada banyak objek. Tabel.8
menunjukkan hubungan antara penanganan event dan objek-objek.
Contoh:
<SCRIPT LANGUAGE="JavaScript">
<!-- menyembunyikan kode dari browser non-js
function periksa()
{
formObj = document.contoh;
if ((formObj.nama.value == "") ||
(formObj.umur.value == "") ||
(formObj.lahir.value == ""))
{
alert("Anda tidak mengisi seluruh field.");
return false;
}
else
return true;
}
// akhir dari penyembunyian -->
</SCRIPT>
Hasil:
Nama Anda :
Umur :
Tgl. Lahir:
Submit Query Reset
FORM>. Untuk JavaScript, hal tersebut adalah suatu read-only array yang membentuk properti
berikut :
e n
H
Berikut ini adalah arti yang sah dari pengalamatan bentuk object ::
By
formName.propertyName
formName.metodeName(parameters)
forms[index].propertyName
forms[index].metodeName(parameters)
Object form hanya memiliki satu metode-submit. Metode submit melakukan aksi yang
sama seperti tombol submit pada HTML form dan memiliki tata cara penulisan
sebagai berikut:
document.formName.submit()
Objek element
Objek elemen berpengaruh pada isi elemen dalam tag <FORM></FORM>. Tabel 9
menperlihatkan elemen objek dan properti-nya.
38
Page 92 / 197
http://www.hendra-jatnika.web.id
Metode element
Metode element melakukan emulasi dari sepupu mereka, yaitu penanganan event:
blur(). e t
Metode ini memindahkan fokus dari object yang ditentukan, tetap tidak
membuat fokus pada objek lain. a N
d r
click(). Metode ini melakukan suatu simulasi klik mouse pada suatu objek yang
n
ditentukan. Ketika mengacu pada element radio, bentuknya adalah
e
H
document.radioName[index].click().
By
focus(). Metode ini memberikan fokus pada objek tertentu.
select(). Metode ini men-select seluruh text area.
39
Page 93 / 197
http://www.hendra-jatnika.web.id
Pada sisi yang lain, frame dibuat berdasarkan tag <FRAMESET></FRAMESET> dalam dokumen
HTML. Layar akan dibagi menjadi sejumlah frame. Ketika dokumen frame
ditutup, frame menghilang karena keberadaannya tergantung pada dokumen
tersebut.
Suatu fasilitas umum dari JavaScript adalah kemampuannya untuk membuat dan
memanipulasi window. Kemampuan ini tidak hanya terbatas pada menampilkan pesan, tetapi
sangat tergantung pada parameter yang diberikan. berikut ini adalah properti dari objek
window yang akan mempengaruhi fleksibilitas dari jendela browser:
By
Suatu frame diantara frameset tersebut dapat mengacu pada frame lain dalam frameset
dengan menggunakan parent.frames[index] tanpa memiliki acuan ke nama
window.
self. Ini adalah sama dengan window atau frame yang sekarang.
status. Ini adalah pesan transient yang mana diset dengan onMouseOver event
handler.
top. Property ini digunakan sebagai acuan window yang laing atas. Dapat digunakan
oleh child windows atau embedded filesets untuk mengacu pada window original.
window. Property ini adalah sama dengan window sekarang.
Contoh:
<A HREF="http://www.indoprog.f2s.com"
onMouseOver="window.status='Klik disini untuk keterangan lebih
lengkap'; return true;" onMouseOut="window.status=''; ">Klik
disini</A>
Hasil:
Klik disini
40
Page 94 / 197
http://www.hendra-jatnika.web.id
window.propertyName
self.propertyName
top.propertyName
parent.propertyName
windowVar.propertyName
propertyName
alert("message"). Metode ini membuat suatu kotak dialog peringatan dengan suatu
tombol OK tunggal. Digunakan untuk menampilkan pesan yang tidak membutuhkan
keputusan pemakai.
close(). Metode ini menutup window acuan. Harus mengandung window acuan
seperti window.close dan close() tanpa acuan adalah sama dengan
document.close.
confirm("message"). Metode confirm menampilkan suatu dialog box konfirmasi
e t
dengan tombol OK dan Cancel. OK mengembalikan nilai true, dan Cancel
mengembalikan nilai false.
a N
d r
[windowVar = ][window.]open("URL", "windowName" ["windowFeatures"].
n
Metode ini membuka suatu Jendela browser yang baru. Nama object windowVar
e
H
adalah nama dari jendela baru dan digunakan sebagai acuan untuk properti dan
metodes-nya.URL menentukan URL yang akan dibuka ke jendela baru. Jika
By
optionnya null, suatu window kosong akan dibuka. Variabel windowName adalah nama
yang digunakan pada atribut TARGET dari <FORM> dan <A> tag. Variabel
windowFeatures adalah suatu comma-separated list dari option berikut:
toolbar=yes|no
location=yes|no
directories=yes|no
status=yes|no
menubar=yes|no
scrollbars=yes|no
resizable=yes|no
width=pixels
height=pixels
Jika tidak ada yang ditentukan, maka semuanya bernilai true. Jika salah satu
ditentukan, maka semua yang lain menjadi false. Jika salah satu di tentukan tanpa
nilai, maka nilainya adalah true.
41
Page 95 / 197
http://www.hendra-jatnika.web.id
NOTE
Setelah terbuat, window adalah tidak terikat pada parent
window, jika parent window di tutup, window yang dibuat
tersebut tetap buka.Event onUnLoad menangani penutupan
window yang dibuat
window.metodeName(parameters)
self.metodeName(parameters)
top.metodeName(parameters)
e t
parent.metodeName(parameters)
a N
windowVar.metodeName(parameters) d r
e n
metodeName(parameters)
H
PERHATIAN By
Metode open() dan close() perlu mengunakan acuan
window.open() dan window.close() untuk menghindari
scope dengan document.open() dan document.close()
Frames membagi suatu window secara multiple, memiliki scrollbar masing-masing. Frame
dibuat dengan tag <FRAMESET></FRAMESET> dalam dokumen HTML. Masing-masing
dokumen membuat suatu frame array untuk dokumen. Jika suatu dokumen dibuka pada salah
satu frame memiliki suatu <FRAMESET> tag, frame akan terbagi lagi menjadi frame oleh
dokumen tersebut. Hirarki dari frameset adalah penting sebagai acuan properti dan metode
dari frame.
CATATAN
Frames memiliki semua properti dari suatu window.
Seluruh hirarki untuk struktur frame adalah sama dengan
struktur window.
Struktur dibawah setiap window atau frame dapat menjadi acuan. Selanjutnya, properti pada
suatu window atau frame dapat mengubah properti object pada jendela atau frame lain.
42
Page 96 / 197
http://www.hendra-jatnika.web.id
CATATAN
Dokumen HTML yang menggunakan
<FRAMESET></FRAMESET> mengandung hanya perintah
frame. Setelah frame terbuka, dokumen tersebut menjadi
tidak visible. Dokumen HTML adalah suatu frame dapat
mengendalikan frame lain. Selanjutnya kemungkinan untuk
pengaturan layar memberikan kebebasan bagi pengembang
untuk suatu dokumen web yang interaktif
Contoh :
<html>
<head>
<script language="JavaScript">
if (top.location != this.location)
<title>Tutorial JavaScript</title>
<frameset cols=175,*>
e t
a
<frame src="daftar.html" name="kiri">N
d r
<frame src="topik1.html" name="kanan">
e n
</frameset>
H
</head>
</html>
file daftar.html
By
<html>
<head>
<script language="JavaScript">
function buka(x)
{
top.frames[1].location=x;
return false
}
</script>
</head>
<body>
<h1>Daftar Isi</h1>
<a href="" onclick="return buka('topik1.html')">Memasukan
JavaScript ke dalam HTML</a><hr>
<a href="" onclick="return buka('topik2.html')">Variabel dan
Literal</a><hr>
<a href="" onclick="return buka('topik3.html')">Ekspresi dan
Operator</a><hr>
<a href="" onclick="return buka('topik4.html')">Struktur
Kendali dan Fungsi</a><hr>
43
Page 97 / 197
http://www.hendra-jatnika.web.id
</body>
</html>
Summary
JavaScript adalah lebih dari pada suatu bahasa script yang sederhana dan kurang dari suatu
object-oriented programming language. Hal tersebut merupakan perekat yang mana mengikat
banyak elemen yang berbeda ke suatu lingkungan dinamis dan interaktif.
e t
a N
d r
e n
H
By
44
Page 98 / 197
http://www.hendra-jatnika.web.id
Saya memiliki dua frame, dan saya ingin klik pada pilihan diframe kiri akan
mengupdate isi frame kanan. Bagaimana hal tersebut dilakukan ?
Anda dapat melakukan hal tersebut dengan JavaScript, dan perhatikan contoh berikut :
Misalnya halaman html untuk membuat frame kiri dan kanan adalah sebagai berikut :
Contohy.html
<html>
<head>
<title>Tutorial JavaScript</title>
<frameset cols=175,*>
e t
<frame src="menu.html" name="kiri">
a N
d r
<frame src="topik1.html" name="kanan">
</frameset>
e n
H
By
</head>
</html>
Pada contoh diatas, pada frame kiri akan dibuka suatu html dengan nama menu.html, dan
sebelah kanan akan diaktifkan topik1.html, dan isi dari menu.html adalah sebagai berikut :
menu.html
<html>
<head>
<script language="JavaScript">
function buka(x)
{
top.kanan.location=x; // membuka halaman x pada frame
kanan
return false
}
</script>
</head>
<body>
<h1>Daftar Isi</h1>
45
Page 99 / 197
http://www.hendra-jatnika.web.id
</body>
</html>
Pada menu.html diatas, kita menggunakan event onclick pada masing-masing link yang akan
memanggil suatu fungsi buka yang diikuti dengan suatu parameter yang berupa nama
dokumen html target. Pada fungsi buka, kita menggunakan properti location untuk frame
kanan membuka halaman bersangkutan.
Bagaimana saya membuat suatu link yang dapat menutup jendela browser ?
e t
Untuk menutup jendela browser yang sedang aktif anda dapat menggunakan metode close
pada objek window. a N
d r
Contoh :
e n
H
By
<A HREF="javascript:window.close()">tutup</A>
Bagaimana saya membuat pesan pada status bar ketika pemakai meletakkan pointer
pada suatu link ?
Anda dapat menggunakan properti window.status, dan event onMouseOver dan onMouseOut.
Perhatikan contoh berikut ini :
<SCRIPT LANGUAGE="JavaScript">
function message(text){
window.status = text;
}
</SCRIPT>
<A HREF="http://www.indoprog.f2s.com"
onMouseOver="message('Homepage indoporg');return true"
onMouseOut="message('');return true"><B>(Homepage
baru)</B></A>
Coba letakkan mouse pointer pada linik Ayo ke (Homepage baru) Indoprog, dan perhatikan
status bar browser anda.
46
Page 100 / 197
http://www.hendra-jatnika.web.id
Anda dapat membuat suatu fungsi yang mengambil nilai item yang dipilih pemakai, dan
membuka halam yang diinginkan
function buka() {
var pilih = eval(document.dropdown.site.selectedIndex);
if( (pilih > 0) && (pilih < 7) ) {
var bagian=new BuatArray( '',
'http://indoprog.terrashare.com/tutor/html/index.html',
'http://indoprog.terrashare.com/tutor/javascript/index.html',
'http://indoprog.terrashare.com/tutor/asp/index.html',
'http://indoprog.terrashare.com/tutor/php/index.html',
'http://indoprog.terrashare.com/tutor/perl/index.html');
this.location=buka[pilih];
}
}
//-->
</SCRIPT>
e t
<FORM NAME="dropdown">
a N
d r
<SELECT NAME="site" onChange='buka();' ALIGN="left">
<OPTION SELECTED>Pilih tutorial yang diinginkan
<OPTION>HTML
e n
<OPTION>JavaScript
<OPTION>ASP H
<OPTION>PHP
<OPTION>Perl
</SELECT>
By
</FORM>
47
Page 101 / 197
http://www.hendra-jatnika.web.id
JavaScript
DAFTAR ISI
Pengenalan JavaScript
Menggunakan Javacript
Variabel dan Literal
Ekspresi dan Operator
Perintah Kendali dan Fungsi
Dasar dari Objek
Objek Built-In dan Fungsi
Netscape Objects
Objek form
Window dan Frame
Ringkasan
1. Pengenalan JavaScript
Apa JavaScript?
t
JavaScript adalah bahasa script untuk client-side (sisi-client) yang dapat digunakan untuk membuat
e
a N
halaman web menjadi interaktif dan lebih dinamis. JavaScript dikembangkan pertama sekali oleh
Netscape, merupakan bahasa script paling populer pada internet dan kompatibel dengan berbagai
browser.
d r
e n
Ringkasan apa dan untuk apa JavaScript:H
•
•
By
Javascript dirancang untuk menambah interaktivitas halaman-halaman HTML.
JavaScript adalah bahasa scripting (teks biasa – tanpa di compile) bebas lisensi dan mudah
untuk dipelajari dan digunakan dibanding bhs programming tradisional.
• JavaScript bekerja pada sisi client (client side). Browsers menterjemahkan statemen
(perintah) JavaScript yang disisipkan (embedded) secara langsung pada halaman HTML.
• JavaScript dirancang untuk digunakan pada halaman Web dan terintegrasi dengan HTML.
• Statemen JavaScript yang disisipkan pada halaman HTML dapat mengenal dan merespon
User Events seperti Mouse Clicks, Form Input, dan Page Navigation.
• JavaScript dapat membaca dan menulis elemen-elemen HTML
• JavaScript dapat digunakan untuk validasi data - Sebagai contoh, JavaScript dapat digunakan
untuk fungsi verifikasi keabsahan informasi ketika user mengisi form isian melalui halaman Web.
Dengan menempatkan JavaScript pada HTML, JavaScript dapat menterjemahkan setiap text yang
diisikan dan selanjutnya memberi peringatan (alert) melalui dialog box setiap user meng-input
informasi yang tidak valid. Atau dapat juga digunakan untuk melakukan aksi seperti: menjalankan
file audio, menjalankan applet, atau berkomunikasi dengan plug-in
Java adalah object-oriented language (bahasa berorientasi objek) sedangkan JavaScript adalah object-
based language (bahasa yang didasarkan objek). Perbedaannya sangat mendasar seperti: Java sebagai
bahasa object-oriented mempunyai sifat dan kemampuan seperti: inheritance, encapsulation,
overloading dan polymorphism sedangkan JavaScript tidak.
Kodenya berintegrasi dalam dokumen HTML Hasilnya berupa Applet, diakses dari halaman HTML
Jenis data variable tidak dideklarasi (loose typing). Jenis data Variable harus dideklarasi (strong typing).
Bekerja sebatas pada elemen HTML Lebih dari sekedar elemen dokumen HTML (misalnya
multimedia)
Mampu mengakses objek dan fungsionalitas browser Tidak mampu mengakses objek dan fungsionalitas
browser
Perlu diketahui bahwa JavaScript versi Microsoft yang disebut sebagai "JScript", mempunyai
beberapa perbedaan yang membuatnya tidak sepenuhnya kompatibel dengan JavaScript orisinil.
Kode JavaScript ditempatkan didalam file HTML, dengan demikian kode JavaScript dapat dibuat
dengan cara yang sama membuat HTML yaitu menggunakan editor teks seperti WordPad ataupun
NotePad.
e t
Ada dua cara memasukkan JavaScript dalam dokumen HTML : a N
d r
Menggunakan tag HTML yang menangani event.
e n
H
Menyisipkan kodet JavaScript didalam tag <SCRIPT>...</SCRIPT>
Bentuk "onClick" adalah Event Handler, sebagai atribut dari tag <INPUT> dalam suatu HTML.
Sedangkan kode JavaScript berda dalam tanda petik yaitu: "alert('Terimakasih')"
Event-Event
Kebanyakan (tidak semua) element-elemen pada halaman web merespon thdp interaktivitas
user (seperti: keystrokes, mouse clicks) dengan membuat events
Handlers dapat ditempatkan pada elemen form HTML
Kapitalisasi
JavaScript adalah case sensitive (HTML tidak case sensitive)
onclick="alert('You clicked the button!');"
Bagian yang digaris bawahi (onclick) adalah HTML
Sedangkan yang berda dalam tanda petik (quote) adalah JavaScript
Sehingga sering terlihat onclick di ganti hurufr bersar menjadi onClick untuk
memudahkan dibaca
Catatan:
Karena ada tanda petik didalam tanda petik maka diperlukan tanda petik tunggal
dan dobel
e t
a N
Event-event Umum
d r
e n
– H
• Kebanyakan elemen HTML menghasilkan even berikut:
onClick -- elemen form untuk di click
–
–
–
By
onDblClick -- elemen form di click dua kali secara berturutan (dobel click)
onMouseDown – tombol mouse ditekan saat berada diatas elemen form
onMouseOver -- mouse digerakkan diatas elemen form
– onMouseOut -- mouse digerakkan menjauh elemen form
– onMouseUp -- tekanan tombol mouse dilepas sementra berada diatas elemen form
– onMouseMove -- mouse digerakkan
• Kode berikut akan mebuat teks Hello berwarna merah jika mouse dikenakan
padanya dan berwarna biru jika mouse dijauhkan
<h1 onMouseOver="style.color='red';"
onMouseOut="style.color='blue';">Hello </h1>
• Rollover dengan menggunkan Image:
<img src="../Images/duke.gif"
width="55" height="68"
onMouseOver="src='../Images/duke_wave.gif';"
onMouseOut="src='../Images/duke.gif';">
buttons, links
H e
submit buttons, reset
By
MouseOver Links User menggerakkan OnMouseOver
kursor stas link
MouseOut Areas, links User menggerakkan OnMouseOut
kursosr menjauhi
image map atau link
Select Text fields, text areas User memilih field onSelect
dari elemen form
input
Move Windows User atu script OnMove
mengerakkan window
Resize Windows User atau script me- OnResize
resize window
DragDrop Windows User men-drop suatu onDragDrop
object pada browser
window
Focus Windows dan semua User memberi fokus OnFocus
elemen form elemen input
Blur Windows dan semua User mengerakkan OnBlur
elemen form focus ke elemen lain
Reset Forms User meng-click onReset
Reset button
Submit Forms User meng-click onSubmit
Submit button
<html>
<head>
</head>
<body>
<FORM>
<SELECT onChange=
"document.bgColor=this.options[this.selectedIndex].value">
<OPTION VALUE="40E0D0"> Torquoise
<OPTION VALUE="2E8B57"> Sea Green
<OPTION VALUE="87CEEB"> Sky Blue
<OPTION VALUE="F4A460"> Sandy Brown
<OPTION VALUE="FFF0F5"> Lavender Blush
<OPTION VALUE="FF1493"> Deep Pink
<OPTION VALUE="FFFFFF" SELECTED> White
</SELECT>
</FORM>
<br>
<form method="post" action="">
<input type="button"
name="myButton"
value="Click me"
onClick="alert('You clicked the button!');">
</form>
<h1 onMouseOver="style.color='red';"
onMouseOut="style.color='blue';">Hello </h1>
e t
</body>
</html> a N
d r
e n
H
By
Kebanyakan kode JavaScript dipmapat didalam tag <script> seperti diperlihatkan contoh dibawah
ini:
Contoh: Menulis teks pada halaman
<html>
<body>
<script type="text/javascript">
document.write("Hello World!")
</script>
</body>
</html>
Car penulisan lain dari tag script dan atributnya adalah sbb:
<SCRIPT LANGUAGE="javaScript">
document.write("Hello World!")
</SCRIPT>
Kode pada contoh diatas akan menghasilkan keluaran pada halaman HTML sbb:
Hello World!
Penjelasan:
• Gunakan tag <script> dan juga atribut yang menunjukkan bahasa script yang digunakan
<script type="text/javascript"> atau <SCRIPT LANGUAGE="javaScript">
•
e t
Perintah untuk menuliskan sesuatu pada halaman adalah: document.write
a N
document.write("Hello World!")
d r
• Kemudian tutup dengan tag <script>
e n
</script> H
Penempatan JavaScript By
Ada beberapa cara penempatan kode JavaScript didalam halaman HTML.
Scripts yang ditempatkan pada bagian body akan dieksekusi sementara halaman diload.
Scripts yang ditempatkan pada bagian head akan dieksekusi jika dipanggil.
Contoh
</html>
Script External
Script juga dapat ditempatkan sebagai file tersendiri (file dengan ekstensi .js) seperti berikut:
<html>
<head>
</head>
<body>
<script src="xxx.js">
</script>
<p>
The actual script is in an external script file called "xxx.js".
</p>
</body>
</html>
Perhatian : Tidak semua browser mampu memproses JavaScript, sehingga untuk menghindari kesalahan pada
browser tersebut, anda perlu mengetikkan script diantara tag komentar HTML:
Number, baik bilangan nyata (real) maupun bilangan bulat (integer) (contoh 4.156 dan 39)
String (contoh "ini adalah JavaScript")
Logical (Boolean) dengan nilai true dan false
Null, yang mana adalah keyword khusus yang mengawali nilai kosong.
Walaupun dengan jumlah tipe data yang sedikit, tetapi cukup untuk unjuk kerja JavaScript. Perlu diperhatikan
bahwa tidak ada perbedaan antara tipe integer dengan real, keduanya memiliki tipe yang sama yaitu number.
JavaScript tidak menyediakan tipe data khusus untuk data tanggal. Tetapi memiliki beberapa fungsi dan object
date yang dapat digunakan untuk melakukan manipulasi data tanggal.
Mendefinisikan Variabel
Aturan penamaan variabel pada JavaScript adalah nama harus dimulai dengan suatu huruf atau garis bawah (_)
dan huruf selanjutnya dapat berupa angka (0-9), huruf besar (A-Z) atau huruf kecil (a-z), garis bawah. Berikut
ini adalah contoh penamaan variabel yang sah:
First_Name
t99
_name
Catatan
JavaScript tidak memeriksa spelling dari nama variabel. Tetapi
programmer sebaiknya menggunakan spelling yang benar untuk
memudahkan proses pembacaan dan pencarian kesalahan.
Batasan lainnya dalam pemberian nama variabel adalah tidak boleh sama dengan cadangan kata pada
JavaScript. Tabel 1 adalah daftar dari cadangan kata pada JavaScript.
temperature =
Karena JavaScript sangat longgar tentang tipe, sehingga menyediakan beberapa fungsi untuk melakukan
manipulasi data string dan nilai numerik.
variabel Global
variabel Local
Variabel lokal digunakan didalam suatu fungsi dan ruang linkupnya terbatas pada fungsi tersebut. Untuk
mendeklarasikan suatu variabel lokal, harus diawali dengan var, seperti contoh berikut ini:
var MaxValue=0
JavaScript mengganggap semua variabel yang tidak diawali dengan var adalah variabel global. Walaupun
JavaScript memperbolehkan anda menggunakan nama variabel yang sama untuk local maupun global, tetapi
adalah praktek yang tidak disarankan.
TIP
Untuk memastikan fungsi mendapatkan nilai yang benar dari suatu
variabel global, deklarasikan semua variabel global tersebut pada awal
dari script.
Literal
Sebagai lawan dari variabel, literal mewakili nilai baku yang digunakan dalam JavaScript. JavaScript
mendukung literal berikut:
Integer literal
Floating point literal
Boolean literal
String literal
Special character
Integer dapat dalam basis desimal (basis 10), hexadesimal, dan oktal. Suatu nilai desimal adalah semua angka
yang tidak diawali dengan nol (seperti 4, 89, atau 57). Suatu angka yang diawali dengan nol, adalah berbasis
e t
oktal (seperti 04, 065, atau 0145). Suatu bilangan dinyatakan dalam basis hexadesimal diawali dengan 0x atau
0X (seperti 0xff, 0X44, atau 0xAE).
a N
d r
Suatu literal floating-point terdiri dari komponen: suatu desimal bulat, suatu decimal berkoma (.), suatu desimal
n
pecahan, dan eksponen. (seperti 1.23 or 44.6389) atau dalam notasi scientific (3.6E-8, .4E12, or -2.7E12).
e
H
Setiap literal floating-point literal minimal memiliki satu digit dengan satu desimal atau eksponen.
By
Literal Boolean adalah true atau false.
Literal String dapat diapit oleh petik tunggal ( ' ) atau petik ganda ( " ). Tanda petik awal dan akhir harus sama,
seperti contoh berikut:
TIP
Ketika anda menulis event handle, apit string dengan petik tunggal,
karena petik ganda dibatasi untuk nilai atribut pada HTML
Literal string dapat juga mengandung karakter khusus untuk kendali baris Table 2 adalah daftar dari karakter
khusus dan fungsi-fungsinya.
Carriage return \r
Tab \t
Tanda backslash (\) adalah karakter escape pada JavaScript. Ketika digunakan pada akhir dari suatu baris, akan
berfungsi sebagai character penyambung baris. Ketika diikuti oleh karakter lain, karakter escape tersebut akan
kehilangan fungsi khususnya. Dalam JavaScript, programmer mengunakan backslash untuk escape backslash
lainnya, suatu petik tunggal, dan suatu petik ganda.
Assignment operator
Arithmetic operator
Bitwise operator
Logical operator
Comparison operator
String operator
JavaScript memiliki operator binari maupun unari. Suatu operator binari memiliki format.
e t
operand1 operator operand2
a N
d r
Sebagai contoh , 9 * 7 atau temp = 24 adalah ekspresi dengan operator binari.
e n
Operator unari memiliki dua format:
H
operand operator
By
atau
operator operand
Sebagai contoh ekspresi mengunakan operator unari adalah ++y atau y++.
Assignment Operator
Operator pemberi nilai (=) adalah suatu operator binari yang digunakan untuk memberi nilai ke operand di sisi
kiri (biasanya berupa suatu variabel) yang didasarkan pada nilai operand sebelah kanan (seperti FirstName =
"John" atau x = y * 9). Table 3 adalah daftar singkat operator pemberi nilai.
Arithmetic Operator
Sesuai dengan fungsinya operator aritmatika melakukan operasi perhitungan aritmatika terhadap suatu nilai
numerik baik dalam literal maupun variabel. JavaScript mendukung operator standard aritmatika untuk
penjumlahan (+), pengurangan (-), perkalian (*), dan pembagian (/). Juga memiliki operator modulus (%),
increment (++), decrement (--), dan unary negation (-).
Operator modulus (%) adalah suatu operator binary yang mengembalikan nilai sisa dari suatu pembagian bulat
operand1 terhadap operand2. Sebagai contoh, hasil dari 27 % 6 adalah 4.
Operator increment unary adalah menambah nilai satu ke variabel operand, sedangkan operator decrement unary
mengurangi satu dari padanya. Bagaimanapun, nilai yang dikembalikan tergantung dari posisi operator terhadap
operand Jika operator berada didepan (++x atau --x), nilai yang dikembalikan adalah x+1 atau x-1. Ketika
e t
operator dibelakang(x++ or x--), nilai x dikembalikan sebelum ditambah atau dikurang.
a N
d r
Operator khusus unari arithmetic adalah operator unari negation operator. Ia membalikan tanda dari nilai yang
diberikan pada suatu variabel. Sebagai contoh, jika x = -7, -x mengubah nilai menjadi 7.
e n
Bitwise Operator
H
By
Untuk programmer yang perlu menangani bit. JavaScript menyediakan satu set dari operator bitwise. Untuk
operator ini, JavaScript melakukan konversi terhadap operand menjadi integer 32-bit sebelum melakukan
operasi padanya. Operator logika bitwise adalah
Bitwise AND (&), akan mengembalikan nilai dari logika AND antara sepasang bit. Sebagai contoh ,
0x0f & 0x0a mengembalikan 0x0a.
Bitwise OR (|), akan mengembalikan nilai dari logika OR antara setiap pasangan dari bit. Sebagai
contoh, 0x05 | 0x0a mengembalikan 0x0f.
Bitwise XOR (^), akan mengembalikan nilai dari logika exclusive OR between antara tiap pasangan
bit. Sebagai contoh, 0x0f ^ 0x0a mengembalikan 0x05.
JavaScript juga menyediakan satu set bitwise untuk operasi shift operand1 terhadap jumlah yang ditentukan di
operand2. Operand ini adalah
Shift left (<<), akan mengeser bit ke kiri dengan jumlah tertentu. Bit yang melewati batas kiri akan
diabaikan, dan suatu bit nol akan digeser dari kanan. Sebagai contoh, 0x0f << 2 mengembalikan
0x3c.
Sign propagating shift right (>>) mempertahankan bit tanda dari nilai ketika melakukan geser ke kanan
sesuai dengan jumlah yang ditentukan. Bit yang tergeser melewati bata kanan akan diabaikan, kecuali
bit tanda, bit nol akan digeser dari kiri.. Sebagai contoh, 10 >> 2 mengembalikan 2 dan -10 >> 2
mengembalikan -2.
Zero-fill right shift (>>>) sama seperti >>, cuma tidak mempertahankan bit tanda ketika dilakukan
pergeseran sesuai dengan jumlah yang ditentukan.
Logical Operator
Operator logika membutuhkan operand dengan nilai Boolean (true atau false) dan mereka akan mengembalikan
suatu nilai logika. Operator logika adalah sebagai berikut :
Operator logika NOT adalah suatu unary operator yang mempertahankan nilai ekspresi.
Comparison Operator
Operator perbandingan diterapkan pada perbandingan pada data numerik dan data string serta tidak dapat
dilakukan pada nilai Boolean. Masing-masing operand harus memiliki tipe yang sama: nemerik dibandingkan
dengan numerik atau string dengan string. Hasil dari perbandingan adalah sautu nilai Boolean. Operator
perbandingan adalah:
Equal (==)
Not equal (!=)
Greater than (>)
Greater than or equal to (>=)
Less than (<)
Less than or equal to (<=)
JavaScript juga mendukung ekspresi secara kondisi (conditional expression) yang mana berbentuk.
e t
(condition) ? true_value : false_value
a N
d r
e n
Jika kondisi adalah benar, ekspresi memiliki dari true_value. Sebaliknya memiliki nilai dari
H
false_value. Seperti saudaranya yang berbasis bahasa C, ekpresi kondisi adalah ekspresi standard dan dapat
digunakan dimana saja, dan dapat dilihat sebagai berikut :
By
battery_status = (voltage > 1.3) ? "good" : "weak"
String Operator
Operator string (+) mengabung dua nilai string dan mengembalikan satu string dimana merupakan hasil
gabungan dari keduanya. Sebagai contoh :
"Java" + "Script"
Menghasilkan
"JavaScript"
Operator shorthand += mengabung string kiri dengan string dikanan operand dan memberikan nilai baru pada
operand disebelah kiri.
Urutan operasi
Dalam ekspresi yang kompleks dimana melibatkan lebih dari satu operator, urutan operasi dari operator
menentukan nilai hasil evaluasi. Dengan menggunakan tanda kurung, programmer dapat mengatur aturan
tersebut. Table .4 adalah urutan prioritas operasi dari yang paling rendah sampai yang paling tinggi.
Keterangan Operator
Assignment = += -= *= /= %= <<= >>= >>>= &= ^= |=
Conditional ?:
Logical OR ||
Logical AND &&
Bitwise OR |
Bitwise XOR ^
Bitwise AND &
Equality == !=
Relational < <= > >=
Bitwise shift << >> >>>
Addition/subtraction +-
Multiply/divide */%
Negation/increment ! ~ - ++ -
Call, member () []
e t
a N
d r
5. Struktur Kendali dan Fungsi
e n
H
Untuk membuat suatu halaman yang dinamis dan interaktif, perancang halaman Web membutuhkan perintah-
By
perintah yang dapat mengatur aliran dari informasi. Berdasarkan hasil komputasi yang telah dilakukan,
JavaScript akan membuat keputusan jalur mana yang akan dieksekusi. Kita akan membahas tentang perintah
conditional dan loop dalam JavaScript.
Walaupun semua kode harus ditulis dalam penanganan event, tetapi hal ini adalah praktek pemrograman yang
kurang baik. Sebagai pengantinya, gunakan fungsi, kode akan menjadi lebih modular dan dapat digunakan
kembali (reuseable).
Perintah kondisi
Sebagai tambahan terhadap ekspresi kondisi yang telah dijelaskan bagian sebelumnya. JavaScript memiliki
suatu perintah kondisi if. Tata cara penulisan dari perintah kondisi tersebut adalah sebagai berikut:
if (condition) {
statements1 }
[else {
statements2}]
condition adalah ekspresi JavaScript yang mana hasil evaluasinya memiliki nilai Boolean true atau false.
contoh pemakaian statement if:
if (n>3) {
status = true
if (j != n) j = 0 }
else j = n
Perhatian
Bagi programmer C harus berhati-hati dengan evaluasi kondisi pada
JavaScript. Suatu kondisi numerik yang mengasilkan nol adalah tidak
sama dengan suatu Boolean true pada JavaScript, dan sebaliknya suatu
nilai bukan nol tidak sema dengan Boolean false. Pada JavaScript hasil
dari suatu kondisi harus data type Boolean.
Jika hanya suatu perintah tunggal, tanda kurawal tidak diperlukan. Contoh berikut adalah perintah yang benar:
if (a==b) j=0
else j=1
Perintah Perulangan
e t
JavaScript mendukung dua struktur loop; perintah for dan perintah while. Untuk control pada struktur loop,
JavaScript menyediakan perintah break dan continue.
a N
Perintah for d r
e n
H
Perintah for pada JavaScript sama dengan yang ada di Java dan C. Perintah for mengulang suatu loop sampai
By
kondisi menghasilkan evaluasi true atau loop keluar dengan perintah break . Syntax untuk perintah for
adalah sebagai berikut :
statements
Contoh :
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
sq=i*i
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
Hasil :
number: 1 square: 1
number: 2 square: 4
e t
number: 3 square: 9
number: 4 square: 16
a N
number: 5 square: 25
d r
number: 6 square: 36
number: 7 square: 49
e n
number: 8 square: 64 H
By
number: 9 square: 81
number: 10 square: 100
Perintah while
Perintah while terus mengulangi loop selama kondisi memiliki nilai true. Syntax untuk perintah while adalah
sebagai berikut :
while (condition) {
statements
Test kondisi terjadi pada perulangan while yang pertama kali dan pada akhir dari setiap loop. Ketika hasil test
mengembalikan false, kendali dilewatkan ke perintah berikutnya setelah loop. Perintah for yang diubah ke
suatu while loop.
Contoh:
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
i=1
while (i<=10) {
sq=i*i
i++
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
Hasil:
e t
number: 1 square: 1
a N
number: 2 square: 4
d r
number: 3 square: 9
number: 4 square: 16
e n
number: 5 square: 25 H
By
number: 6 square: 36
number: 7 square: 49
number: 8 square: 64
number: 9 square: 81
number: 10 square: 100
Perintah break
Perintah break menghentikan for atau while loop dan mengembalikan kendali ke perintah berikutnya yang
mengikuti loop. Contoh berikut menggambarkan bagaimana menggunakan perintah break:
i=0
while (i<10) {
if (i==3)
break
i++
Perintah continue
Seperti perintah break, perintah continue menghentikan interasi tersebut untuk suatu for atau while
loop; Tetapi tidak keluar dari loop; Tetapi melakukan interasi berikutnya.
i=0
while (i<10) {
if (i==3)
continue
i++
Perintah function
Suatu function adalah sekumpulan dari perintah JavaScript yang akan mengerjakan tugas tertentu. Fungsi ini
dapat dipanggil dari segala titik pada dokumen tersebut dan dipanggil dari event. Format dari perintah
function adalah sebagai berikut:
e t
a N
function FunctionName(argument list) {
d r
e n
statements
H
}
Contoh:
<HTML>
By
<HEAD>
<SCRIPT LANGUAGE="JavaScript"
function DisplayIt(LineToDisplay) {
document.write(LineToDisplay + "<BR>")
</SCRIPT>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript"
<!-- hide it
LineToDisplay("Hello World")
</SCRIPT>
</BODY>
</HTML>
TIP
Karena browser membaca perintah tersebut diapit oleh
<HEAD>...</HEAD> duluan; adalah praktek yang baik untuk
memesan semua variabel global dan semua fungsi pada HEAD dari
dokumen. Hal ini mencegah kesalahan seperti non-initialized variables
dan undefined functions
Argumen dari suatu fungsi dapat berupa sembarang tipe data atau objek JavaScript. Objek array
functionName.argument[i] dan functionName.arguments.length mengandung nilai jumlah
argumen yang dikirim ke fungsi, argumen acuan dengan mendeklarasikan nama-nama variabel. Hal ini
memungkinkan sejumlah argumen dilewatkan ke fungsi sebagai suatu argument array. Contoh berikut
menunjukkan pemakaian dari suatu variable argument list.
Contoh :
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
e t
a N
<!-- menyembunyikan
d r
UnorderList="UL"
e n
H
function DisplayList(ListType) { // menampilkan
variabel list
By
if (ListType="OL" || ListType="UL") { // validasi
jenis list
document.write("LI" + DisplayList.arguments[i])
return true
</SCRIPT>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript"
<!-- menyembunyikan
document.write("<P>List Display</P>")
else
// unhide it -->
</SCRIPT>
</BODY>
</HTML>
Contoh diatas menggambarkan beberapa hal yang penting dari suatu fungsi. Suatu variabel global diinisialisasi
pada bagian <HEAD>. Perintah var mendeklarasikan i sebagai suatu variabel lokal pada fungsi. Juga
ditunjukkan bagaimana perintah return dapat digunakan untuk memastikan fungsi dijalankan dengan baik.
Perintah return juga dapat mengembalikan string atau nilai numerik, sebagaimana yang ditunjukkan oleh contoh
dibawah ini:
e t
function RetExam(a, b) {
a N
d r
var x=0
e n
x = a+b H
return x By
}
TestResult=RetExam(5, 7)
Komentar
Komentar satu baris yang diawali dengan suatu double slash (//)
Komentar banyak baris yang diawali dengan suatu /* dan diakhiri dengan suatu */
Komentar single-line, dari C++, memperlakukan semua yang dari double slash ke belakang sebagai suatu
komentar, berikut ini adalah contoh yang sah untuk suatu komentar single-line :
// this is a comment
Komentar banyak baris mengikuti aturan pada C dan dapat digunakan untuk menandai perintah JavaScript,
sebagaimana yang ditunjukkan oleh contoh sebelumnya, adalah sutu komentar HTML, baris terakhir
membutuhkan dua slash untuk menjaga JavaScript dapat menginterprestasikan baris tersebut.
Tetapi class pada JavaScript menyediakan properti dan metode untuk membuat objek.
Berikut ini adalah notasi yang digunakan oleh JavaScript untuk menggambarkan suatu objek dan propertinya:
ObjekName.PropertyName
mydog.breed="small mut"
mydog.age=5
mydog.weight=25
e t
Objek juga dapat menggunakan acuan array dengan menggunakan nama propertinya sebagai index:
a N
d r
mydog["breed"]="small mut"
e n
mydog["age"]=5
H
mydog["weight"]=25
By
Juga dapat mengunakan acuan array dengan index secara numerik:
mydog[0]="small mut"
mydog[1]=5
mydog[2]=25
Defining Metodes
Suatu fungsi yang berasosiasikan objek acuan adalah metode. format berikut meng-asosiasikan fungsi dengan
suatu objek:
ObjekName.MetodeName = function_name
ObjekName.MetodeName(parameters);
Untuk melakukan manipulasi pada objek membutuhkan fasilitas tambahan dari JavaScript yaitu dengan perintah
for...in , perintah with , operator new, dan kata kunci this.
Perintah for...in
Perintah for...in menyediakan suatu mekanisme perulangan untuk iterasi melalui semua properti dari suatu
objek. Dengan format adalah sebagai berikut :
statements
Contoh berikut mengunakan perintah ini untuk menampilkan semua properti dalam suatu objek dan nilai
asosiasinya:
Pada contoh sebelumnya, variabel i adalah nama dari property, kemudian mengindeks objek dengan
menggunakan property name_obj[i].
Perintah with
Pada beberapa situasi suatu objek perlu dibuat acuan beberapa kali. Perintah with membuat acuan ke suatu
objek default yang berada dalam kurung. Tata cara penulisannya adalah sebagai berikut:
with (ObjekName) {
statements
var r =
var x =
with (Math) {
r = p / (1 - cos(a))
Operand new
Untuk suatu tipe objek user-defined, operand new berfungsi membuat suatu instance baru
dari objek. Tata cara penulisannya adalah sebagai berikut:
this mengacu pada objek yang sekarang. Pada bagian selanjutnya akan ditunjukkan
bagaimana pemakaian kata kunci ini dalam penulisan function dan metode.
H
By
1. Mendefinisikan jenis objek dengan membuat suatu fungsi.
2. Membuat instances dari objek tersebut dengan menggunakan operand new.
Fungsi tersebut mendefinisikan jenis objek, properti, dan metode. Sebagai contoh untuk
membuat suatu objek dog:
this.breed = breed;
this.age = age;
this.weight = weight;
Untuk menggunakan fungsi diatas, operand new diperlukan untuk mendefinisikan suatu
instance baru untuk objek tersebut. Sebagai contoh:
Selain type data yang umum (string, numeric, and Boolean), objek yang lain dapat juga
menjadi properti dari suatu objek. Contoh menambah suatu nomor izin pada objek jenis dog,
nomor izib ini juga mengacu pada objek lain.
this.owner = owner;
this.phone_number = phone.number;
Jenis Objek dog perlu dimodifikasi untuk mengikutsertakan informasi baru tersebut:
this.breed = breed;
this.age = age;
this.weight = weight; e t
a N
this.license = license;
d r
}
e n
H
By
mydog = new dog("mixed mut", 5, 25, AZ123);
mydog.license.owner
CATATAN
Jika suatu property baru ditambahkan pada suatu objek
tanpa mengubah jenis objek, properti tambahan tersebut
hanya berpengaruh pada objek tersebut dan bukan pada
semua instances dari objek jenis yang sama.
CATATAN
Suatu variabel string atau suatu string literal adalah suatu
objek string. Metode string adalah asosiasi dengan objek
ini, dan akan didiskusikan pada bagian "Objek dan fungsi
built-in".
Mendefinisikan Array
Tidak seperti bahasa lainnya, Java script tidak memiliki suatu tipe data array. Tetapi
bagaimanapun, fungsi yang sama dapat dengan membentuk suatu objek untuk melakukan
emulasi suatu array. Langkah pertama untuk mendefinsikan suatu objek array:
function MakeArray(n) {
this.length = n;
this[i] = 0;
return this
Ketika anda memberikan nilai pada suatu elemen array, hal tersebut menyerupai memberi
e t
nilai pada suatu type data array. Perbedaannya adalah array ini dimulai dari satu dan bukan
nol, karena nol mendefinisikan panjang dari array:
a N
d r
ExmpArray[1] = "test1" e n
H
By
ExmpArrya[2] = "another test"
Objek String
Suatu string yang dipetik adalah suatu variabel string atau suatu properti string dari suatu
objek, segala sesuatu yang ditempatkan diantara petik adalah suatu string. Ada dua cara untuk
menggunakan suatu objek string:
1. stringName.propertyName
2. stringName.metodeName(parameters)
Object string hanya memiliki sebuah properti -length. Karena berupa properti, berikut ini
adalah acuan yang benar:
StringLength = stringVariable.length;
StringLength = mydog.name.length;
Sejumlah besar metode adalah asosiasi dengan objek string. Disamping fungsi manipulasi
string yang normal, banyak diantaranya berfungsi membungkus string diantara tag HTML.
Berikut ini adalah daftar dari metode object string:
document.write("Other Links".anchor("other_links"));
e t
a N
d r
big(). String di apit dengan tag <BIG></BIG>.
e n
blink(). String di apit dengan tag <BLINK></BLINK> .
bold(). String di apit dengan tag <B></B>.
H
charAt(index). Metode ini mengembalikan huruf yang ditentukan oleh index,
By
dimana index adalah range 0 sampai stringName.length - 1. Jika index berada
diluar jangkauan, suatu null string akan dikembalikan.
fixed(). String di apit dengan tag <TT></TT>.
fontcolor(color). String di apit dengan tag <FONT COLOR="color"></FONT>.
Parameter color ditentukan dengan format rrggbb.
fontsize(size). String di apit dengan tag <FONTSIZE=size></FONTSIZE>. Nilai
dapat berupa angka satu sampai tujuh, atau dapat perubahan secara relatif (+ atau -)
yang didasarkanpada ukuran font dasar yang ditentukan pada tag <BASEFONT>.
indexOf(searchValue, [fromIndex]). Metode ini mengembalikan posisi index
dari string pertama yang ditemukan berdasarkan string searchValue. fromIndex
secara optional menentukan posisi awal pencarian. Jika pencarian tidak ditemukan
maka JavaScript mengembalikan -1.
italics(). String di apit dengan tag <I></I>.
lastOf(searchValue, [fromIndex]). Menyerupai indexOf, cuma pencarian
dilakukan dari arah belakang.
link(hrefAttribute). String di apit dengan tag <A HREF=hrefAttribute></A>.
small(). String di apit dengan tag <SMALL></SMALL>.
strike(). String di apit dengan tag <STRIKE></STRIKE>.
sub(). String di apit dengan tag <SUB></SUB>.
substring(indexA, indexB). Metode ini mengembalikan subset dari suatu string,
yaitu dari posisi index A s/d indexB-1. Jika indexA sama dengan indexB
akan dikembalikan suatu null string.
Objek Math
Object Math menyediakan suatu himpunan dari nilai-nilai standar matematika dan metode-
metode yang argumennya berupa himpunan dari operator matematika yang disediakan
dengan JavaScript. Tidak seperti object lainnya, object Math tidak membutuhkan suatu
instance dari object sebelum menggunakan metode objek math tersebut. Untuk memudahkan
pemasukkan nama dan pembacaan, metode Math sering diikat dengan perintah with. Syntax
untuk object Math adalah sebagai berikut:
1. Math.propertyName
2. Math.metodeName(parameters)
Object Math memiliki delapan buah properti. Properti-properti ini ini mendefinisikan
berbagai konstanta matematika. Tabel 5. menunjukkan properti-properti tersebut dan nilai
perkiraannya.
t
Table 5. Properti-properti objek Math dan nilainya.
e
a N
Property Description
d r Approx. value
E Euler's constant
e n 2.718
LN2
H
Natural logarithm of 2 0.693
LN10
LOG2E By
Natural logarithm of 10
Base 2 logarithm of e
2.302
1.442
LOG10E Base 10 logarithm of e 0.434
PI Ratio of circumference to diameter 3.14159
SQRT1_2 Square root of one-half 0.707
SQRT2 Square root of two 1.414
Object Math memiliki sejumlah metode yang argumennya adalah himpunan dari operator
matematika:
Objek Date
e t
a N
Walaupun JavaScript tidak menyediakan suatu type data Date, tetapi menyediakan suatu
d r
objek Date yang mana menangani informasi date dan time. Semua tanggal adalah jumlah
e n
milidetik sejak January 1, 1970, 00:00:00. Akibatnya semua tanggal sebelum 1970 adalah
tidak sah. H
By
Objek Date membutuhkan suatu instance dari objek Date yang berkaitan dengan pemakaian
metode-metodenya. Instance dapat berupa suatu objek baru atau properti dari objek yang ada.
Ada empat cara untuk membentuk instance baru:
Membentuk suatu himpunan dari tanggal dan waktu ke tanggal dan waktu sekarang.
Mengosongkan time berarti memberinya nilai nol. Karena objek Date tidak mengandung
properti apa-apa, hanya ada satu format untuk metode Date:
dateObjectName.metodeName(parameters)
Pengecualiaanya adalah UTC dan metode parse, yang mana adalah metode status dan
pemakaiannya
Date.UTC(parameters)
Date.parse(parameters)
Table 6 menjelaskan nilai yang akan dikembalikan oleh berbagai perintah get.
By
Table 19.7. Setting informasi dalam objek Date.
Dua metode tambahan yang dapat digunakan untuk melakukan konvesi data tanggal ke suatu
nilai string, adalah sebagai berikut:
Objek Date juga memiliki dua metode statik untuk menangani string; hal tersebut memiliki
format Date.metode(). Metode-metode ini adalah sebagai berikut:
Fungsi Built-In
JavaScript mendukung beberapa function built-in yang mana tidak berkaitan dengan object
tertentu. Berikut ini adalah function-function built-in adalah sebagai berikut:
var x =
var y =
8. Objek Netscape
Sebagai tambahan kepada objek-objek JavaScript dan metode, Pengembang halaman Web
dapat mengakses objek-objek dan metode dalam Netscape browser. Bagian ini akan
membahas Objek Netscape Navigator dan metode-metodenya.
Hirarki ini penting untuk membuat acuan kepada object dan propertinya. Turunan dari suatu
object adalah properti dari objek orang tuanya. Karena semua objek adalah merupakan
turunan dari objek window , sehingga objek window sendirinya tidak memiliki acuan ke
objek maupun properti apapun. Tetapi bagaimanapun, acuan ke suatu dokumen pada window
lain membutuhkan tambahan nama window kepada object acuan-nya.
e t
a N
Hal yang penting dari HTML Layout d r
e n
H
Untuk dapat menggunakan JavaScript secara benar membutuhkan pengertian bagaimana
By
Netscape Navigator memproses suatu dokumen HTML. Ketika suatu dokumen HTML di
muat, browser akan mulai melakukan proses terhadap baris pertama dari dokumen. Browser
membuat layout dari layar berdasarkan perintah HTML yang terdapat dalam dokumen
tersebut. Setelah layar selesai digambar, layar tidak dapat digambar ulang tanpa melakukan
proses terhadap dokumen baru. Bagaimana hal ini mempengaruhi frame dan window adalah
topik pada bagian berikutnya.
Sesuai dengan hal ini, maka instance dari suatu objek ada setelah proses dilakukan terhadap
baris HTML yang menghasilkan instance tersebut. Dengan kata lain JavaScript tidak dapat
mengacu pada suatu objek HTML seperti form, atau menjalankan suatu fungsi sampai
browser memproses perintah tersebut. Sebagai contoh, JavaScript tidak dapat mengacu pada
suatu objek form sampai browser memproses HTML untuk form tersebut. Demikian juga
dengan proses perubahan properti, setelah browser menggunakan properti dalam
menghasilkan layout window, maka perubahan properti setelah itu tidak memiliki efek
terhadap tampilannya.
Walaupun nampaknya keterbatasan tersebut berat, namun dengan pengertian yang baik
terhadap HTML proses dan JavaScript akan mengurangi frustasi. Prinsip utama yang perlu
diingat bahwa suatu dokumen HTML diproses secara berurut dan JavaScript adalah bagian
dari proses secara berurut tersebut.
Objek Window
Objek window adalah orang tua dari semua object. Hal tersebut termasuk semua window dan
frame yang berada dalam suatu. Ketika browser mulai memuat suatu dokumen HTML, hal
tersebut dimulai dengan suatu instance dari objek window. Jika dokumen HTML membuat
suatu frame, informasi dari frame tersebut tersimpan dalam suatu objek frame array. Dengan
kata lain, membuka suatu window akan menghasilkan suatu anak dari objek window.
Kehebatan dari JavaScript adalah terletak pada kemampuan untuk melakukan utilisasi
properti dan metode dari objek window.
objek Location
objek History
objek Document
Diantara ketiga objek tersebut, document adalah objek yang paling penting dalam hirarki
tersebut. Objek document itu sendirinya mengacu kepada objek lain. Hal lain yang penting
dari hal ini adalah sebagai berikut:
objek form
objek anchor
objek link
Objek location
e t
N
Objek location mengandung informasi tentang URL sekarang. Acuannya ke objek tersebut
a
adalah sebagai berikut:
d r
e n
H
[windowReference.]location[.propertyName]
By
Properti dari object location mengacu pada bagian individual dari URL:
CATATAN
Objek location dan properti location dari objek
dokumen (document.location) memiliki tujuan yang
berbeda. Objek location dapat berubah, tetapi properti
location tidak dapat berubah.
search. property search adalah string yang dimulai dengan tanda ? yang digunakan
untuk script CGI.
hash. property hash adalah suatu string yang dimulai dengan tanda hash(#) dan
diikuti dengan suatu anchor name.
href. property ini merupakan keseluruhan dari URL. Jika acuan dibuat
ke[windowName.]location, property href menjadi asumsi.
host. Property ini ekivalen dengan hostname:port.
CATATAN
Walaupun JavaScript memungkinkan modifikasi pada
properti individual, praktek pemrograman yang umum
adalah mengubah properti href. Pendekatan ini mencegah
hasil error dari browser sebelum akses URL belum berubah
secara keseluruhan.
Objek History
Akses ke objek History adalah topik yang kontroversial karena memungkinkan script
mengirim history kembali ke server. Untuk mencegah pemakaian yang menyimpang,
Netscape Navigator 2.01 keatas telah menghilangkan object ini.
Objek document
e t
a N
Object document menyimpan properti, objek, dan metode yang mewakili dokumen. Hal
d r
tersebut mengacu pada bagian dokumen HTML yang didefinsikan oleh tag <BODY></BODY>.
n
Bagian ini mendiskusikan komponen dari objek dokumen, kecuali objek form (yang akan
e
dibahas pada bagian berikutnya). H
Properti objek document By
Option HTML ke tag <BODY> mendefinisikan properti objek document. JavaScript mengacu
pada semua properti ini, kecuali untuk image background.
CATATAN
String yang diperlukan untuk mengubah properti color
adalah dalam format document.colorProperty =
"#RRGGBB" atau document.colorproperty="colorName".
Property color lainnya didefinisikan dalam tag
<HEAD></HEAD> yang mendahului tag <BODY>.
alinkColor. property control warna dari suatu active link. Dengan kata lain, hal
tersebut adalah warna dari link ketika terpilih.
vlinkColor. Situs yang pernah dikunjungi, browser menampilkan warna untuk link
tersebut.
Contoh:
<FORM>
<SELECT onChange=
"document.bgColor=this.options[this.selectedIndex].value">
<OPTION VALUE="40E0D0"> Torquoise
<OPTION VALUE="2E8B57"> Sea Green
<OPTION VALUE="87CEEB"> Sky Blue
<OPTION VALUE="F4A460"> Sandy Brown
<OPTION VALUE="FFF0F5"> Lavender Blush
<OPTION VALUE="FF1493"> Deep Pink
<OPTION VALUE="FFFFFF" SELECTED> White
</SELECT>
</FORM>
Hasil :
White
e t
a N
d r
e n
Object document juga mengandung properti berikut yang tidak berkaitan dengan warna:
H
lastModified.
dimodifikasi.
By
Property read-only yang berkaitan dengan tanggal terakhir dokumen
location. Property read-only yang biasanya sama dengan nilai dari lokasi object,
kecuali redirection digunakan untuk URL
referrer. Property read-only mengandung URL untuk dokument yang mana di link
ke dokumen tersebut.
title. Property read-only mengandung nilai yang ditentukan pada
tag<TITLE></TITLE>.
Contoh:
<SCRIPT LANGUAGE="JavaScript">
<!--
document.write("Update terakhir :");
document.write(document.lastModified);
// -->
</SCRIPT>
Hasil:
Object anchors mengandung suatu array dari semua anchors yang dideklarasikan dengan
atribut NAME dari tag <A> </A>. Array tersebut dimulai dari 0 dan berlanjut sampai
document.anchors.length - 1. Nilai dari document.anchors[index] adalah null.
TIP
Sebelum menggunakannya untuk memberikan nilai seperti
location.hash, adalah mungkin untuk memeriksa
keabsahan dari anchor dengan membandingkannya dengan
panjang array; anda menggunakan bilangan berurut untuk
menentukan anchors
Objek link
Array link mengandung object link yang didefinisikan oleh tag <A></A> atau dengan metode
e t
link. Array tersebut meliputi objek untuk atribut HREF dan NAME. Dengan tambahan ke atribut
a N
TARGET, properti dari masing-masing object link adalah identik dengan object location.
d r
CATATAN
e n
link H
array adalah suatu array read-only. Entries tambahan
By
ditambahkan dengan tag <A></A>. Metode link melakukan
modifikasi terhadap isi dalam array link
Object link memiliki dua event handler: onClick dan onMouseOver. Bagian ini disebut
sebagai "The Form Object," pada bagian selanjutnya di bab ini, menggambarkan bagaimana
mengunakan event handler.
Properti cookie
Property cookie mengandung suatu nilai string dari isi cookier dari file cookies.txt untuk
dokumen tersebut. Untuk suatu keterangan lengkap tentang bagaimana menggunakan
cookies, lihat bagian Netscape cookie specification. Metode substring, charAt, indexOf, dan
lastIndexOf dapat digunakan untuk memisahkan string cookie.
document.write()
document.writeln()
document.open()
document.close()
document.clear()
CATATAN
Sekarang, tidak dimungkinkan lagi untuk mencetak tulisan
apapun dengan JavaScript melalui metode write ataupun
writeln
e t
N
Stream tersebut tetap terbuka sampai browser menemukan metode document.close().
a
r
document.close() memaksakan isi dari stream ditampilkan. Metode
d
n
document.clear()membersihkan isi dari window.
e
9. Objek Form
H
By
HTML tag <FORM></FORM> adalah fasilitas input data oleh pemakai, dan output data variabel
kepada pemakai. Input oleh pemakai memiliki efek pemilihan pada sisi klien yang dapat
dikirm ke server. Pada sisi lain, data variabel seperti marquees dapat ditampilkan pada form.
Pada sisi input, event handle adalah fasilitas untuk membangkitkan rutin JavaScript untuk
melakukan aktifitas pada proses edit data seperti validasi. Pada sisi output, JavaScript
memegang peranan penting dalam mengatur bagaimana data ditampilkan.
penanganan events
Event adalah hasil dari aksi pemakai, seperti klik pada suatu tombol mouse, checking pada
suatu kotak, dan pengiriman form. Penanganan Event didefinsikan dalam tag HTML
sepanjang JavaScript berkaitan dengan event tersebut. Berikut ini adalah contoh yang
merupakan kode dari suatu penanganan event.
Pada contoh sebelumnya, kata kunci this mengacu pada objek tersebut, yang mana adalah
objek button. Dengan menyebutkan this.form, adalah acuan ke objek form yang
mengandung button tersebut. Ketika contoh sebelumnnya menjalankan suatu fungsi, perintah
JavaScript juga sah. Kalau lebih dari satu perintah, tiap perintah harus dipisahkan dengan
suatu titik koma.
TIP
Praktek pemrograman yang baik adalah menggunakan
fungsi karena mereka membuat kode lebih mudah dibaca
dan dapat digunakan kembali.
NOTE
Sampai suatu dokumen HTML selesai di muat ke window
yang mengandung tag <BODY></BODY>, suatu window
tidak mengandung penanganan event.
Berikut ini adalah daftar dari penanganan event yang didukung oleh JavaSCript:
H
onUnload. event ini terjadi ketika dokument di exit.
By
Penanganan Event adalah bagian dari berbagai object. Beberapa object mendukung lebih dari
satu penanganan event, dan beberapa penanganan event terjadi pada banyak objek. Tabel.8
menunjukkan hubungan antara penanganan event dan objek-objek.
Contoh:
<SCRIPT LANGUAGE="JavaScript">
<!-- menyembunyikan kode dari browser non-js
function periksa()
{
formObj = document.contoh;
if ((formObj.nama.value == "") ||
(formObj.umur.value == "") ||
(formObj.lahir.value == ""))
{
alert("Anda tidak mengisi seluruh field.");
return false;
}
else
return true;
}
// akhir dari penyembunyian -->
</SCRIPT>
Tgl. Lahir:
Submit Query Reset
FORM>. Untuk JavaScript, hal tersebut adalah suatu read-only array yang membentuk properti
berikut :
Berikut ini adalah arti yang sah dari pengalamatan bentuk object ::
formName.propertyName
formName.metodeName(parameters)
forms[index].propertyName
forms[index].metodeName(parameters)
Object form hanya memiliki satu metode-submit. Metode submit melakukan aksi yang
sama seperti tombol submit pada HTML form dan memiliki tata cara penulisan
sebagai berikut:
document.formName.submit()
Objek element
Objek elemen berpengaruh pada isi elemen dalam tag <FORM></FORM>. Tabel 9
menperlihatkan elemen objek dan properti-nya.
Metode element
Metode element melakukan emulasi dari sepupu mereka, yaitu penanganan event:
blur(). Metode ini memindahkan fokus dari object yang ditentukan, tetap tidak
membuat fokus pada objek lain.
click(). Metode ini melakukan suatu simulasi klik mouse pada suatu objek yang
ditentukan. Ketika mengacu pada element radio, bentuknya adalah
document.radioName[index].click().
focus(). Metode ini memberikan fokus pada objek tertentu.
select(). Metode ini men-select seluruh text area.
Suatu fasilitas umum dari JavaScript adalah kemampuannya untuk membuat dan
memanipulasi window. Kemampuan ini tidak hanya terbatas pada menampilkan pesan, tetapi
sangat tergantung pada parameter yang diberikan. berikut ini adalah properti dari objek
window yang akan mempengaruhi fleksibilitas dari jendela browser:
Contoh:
<A HREF="http://www.indoprog.f2s.com"
onMouseOver="window.status='Klik disini untuk keterangan lebih
lengkap'; return true;" onMouseOut="window.status=''; ">Klik
disini</A>
Hasil:
Klik disini
windowVar.propertyName
propertyName
alert("message"). Metode ini membuat suatu kotak dialog peringatan dengan suatu
tombol OK tunggal. Digunakan untuk menampilkan pesan yang tidak membutuhkan
keputusan pemakai.
close(). Metode ini menutup window acuan. Harus mengandung window acuan
seperti window.close dan close() tanpa acuan adalah sama dengan
document.close.
confirm("message"). Metode confirm menampilkan suatu dialog box konfirmasi
dengan tombol OK dan Cancel. OK mengembalikan nilai true, dan Cancel
mengembalikan nilai false.
[windowVar = ][window.]open("URL", "windowName" ["windowFeatures"].
Metode ini membuka suatu Jendela browser yang baru. Nama object windowVar
adalah nama dari jendela baru dan digunakan sebagai acuan untuk properti dan
metodes-nya.URL menentukan URL yang akan dibuka ke jendela baru. Jika
optionnya null, suatu window kosong akan dibuka. Variabel windowName adalah nama
yang digunakan pada atribut TARGET dari <FORM> dan <A> tag. Variabel
windowFeatures adalah suatu comma-separated list dari option berikut:
toolbar=yes|no
location=yes|no
directories=yes|no
status=yes|no
menubar=yes|no
scrollbars=yes|no
resizable=yes|no
width=pixels
height=pixels
Jika tidak ada yang ditentukan, maka semuanya bernilai true. Jika salah satu
t
ditentukan, maka semua yang lain menjadi false. Jika salah satu di tentukan tanpa
e
nilai, maka nilainya adalah true.
a N
d r
NOTE
e n
H
Setelah terbuat, window adalah tidak terikat pada parent
By
window, jika parent window di tutup, window yang dibuat
tersebut tetap buka.Event onUnLoad menangani penutupan
window yang dibuat
window.metodeName(parameters)
self.metodeName(parameters)
top.metodeName(parameters)
parent.metodeName(parameters)
windowVar.metodeName(parameters)
metodeName(parameters)
PERHATIAN
Metode open() dan close() perlu mengunakan acuan
window.open() dan window.close() untuk menghindari
scope dengan document.open() dan document.close()
Frames membagi suatu window secara multiple, memiliki scrollbar masing-masing. Frame
dibuat dengan tag <FRAMESET></FRAMESET> dalam dokumen HTML. Masing-masing
dokumen membuat suatu frame array untuk dokumen. Jika suatu dokumen dibuka pada salah
satu frame memiliki suatu <FRAMESET> tag, frame akan terbagi lagi menjadi frame oleh
dokumen tersebut. Hirarki dari frameset adalah penting sebagai acuan properti dan metode
dari frame.
CATATAN
Frames memiliki semua properti dari suatu window.
Seluruh hirarki untuk struktur frame adalah sama dengan
struktur window.
e t
a N
r
Struktur dibawah setiap window atau frame dapat menjadi acuan. Selanjutnya, properti pada
d
n
suatu window atau frame dapat mengubah properti object pada jendela atau frame lain.
e
H
By
CATATAN
Dokumen HTML yang menggunakan
<FRAMESET></FRAMESET> mengandung hanya perintah
frame. Setelah frame terbuka, dokumen tersebut menjadi
tidak visible. Dokumen HTML adalah suatu frame dapat
mengendalikan frame lain. Selanjutnya kemungkinan untuk
pengaturan layar memberikan kebebasan bagi pengembang
untuk suatu dokumen web yang interaktif
Contoh :
<html>
<head>
<script language="JavaScript">
if (top.location != this.location)
<title>Tutorial JavaScript</title>
<frameset cols=175,*>
</frameset>
</head>
</html>
file daftar.html
<html>
<head>
<script language="JavaScript">
function buka(x)
{
top.frames[1].location=x;
return false
}
</script>
</head>
<body>
<h1>Daftar Isi</h1>
e t
<a href="" onclick="return buka('topik1.html')">Memasukan
JavaScript ke dalam HTML</a><hr>
a N
<a href="" onclick="return buka('topik2.html')">Variabel dan
Literal</a><hr>
d r
Operator</a><hr> e n
<a href="" onclick="return buka('topik3.html')">Ekspresi dan
H
<a href="" onclick="return buka('topik4.html')">Struktur
By
Kendali dan Fungsi</a><hr>
<a href="" onclick="return buka('topik5.html')">Dasar dari
Objek</a><hr>
<a href="" onclick="return buka('topik6.html')">Objek dan
Fungsi built-in</a><hr>
<a href="" onclick="return buka('topik7.html')">Objek
netscape</a><hr>
<a href="" onclick="return buka('topik8.html')">Objek
form</a><hr>
<a href="" onclick="return buka('topik9.html')">Window dan
Frame</a><hr>
</body>
</html>
12. Summary
JavaScript adalah lebih dari pada suatu bahasa script yang sederhana dan kurang dari suatu
object-oriented programming language. Hal tersebut merupakan perekat yang mana mengikat
banyak elemen yang berbeda ke suatu lingkungan dinamis dan interaktif.
Saya memiliki dua frame, dan saya ingin klik pada pilihan diframe kiri akan
mengupdate isi frame kanan. Bagaimana hal tersebut dilakukan ?
Anda dapat melakukan hal tersebut dengan JavaScript, dan perhatikan contoh berikut :
Misalnya halaman html untuk membuat frame kiri dan kanan adalah sebagai berikut :
Contohy.html
<html>
<head>
<title>Tutorial JavaScript</title>
<frameset cols=175,*>
e t
<frame src="menu.html" name="kiri"> a N
d r
n
<frame src="topik1.html" name="kanan">
e
</frameset> H
</head>
</html>
By
Pada contoh diatas, pada frame kiri akan dibuka suatu html dengan nama menu.html, dan
sebelah kanan akan diaktifkan topik1.html, dan isi dari menu.html adalah sebagai berikut :
menu.html
<html>
<head>
<script language="JavaScript">
function buka(x)
{
top.kanan.location=x; // membuka halaman x pada frame
kanan
return false
}
</script>
</head>
<body>
<h1>Daftar Isi</h1>
</body>
</html>
Pada menu.html diatas, kita menggunakan event onclick pada masing-masing link yang akan
memanggil suatu fungsi buka yang diikuti dengan suatu parameter yang berupa nama
dokumen html target. Pada fungsi buka, kita menggunakan properti location untuk frame
kanan membuka halaman bersangkutan.
t
Bagaimana saya membuat suatu link yang dapat menutup jendela browser ?
e
a N
Untuk menutup jendela browser yang sedang aktif anda dapat menggunakan metode close
pada objek window.
d r
e n
Contoh :
H
By
<A HREF="javascript:window.close()">tutup</A>
Bagaimana saya membuat pesan pada status bar ketika pemakai meletakkan pointer
pada suatu link ?
Anda dapat menggunakan properti window.status, dan event onMouseOver dan onMouseOut.
Perhatikan contoh berikut ini :
<SCRIPT LANGUAGE="JavaScript">
function message(text){
window.status = text;
}
</SCRIPT>
<A HREF="http://www.indoprog.f2s.com"
onMouseOver="message('Homepage indoporg');return true"
onMouseOut="message('');return true"><B>(Homepage
baru)</B></A>
Coba letakkan mouse pointer pada linik Ayo ke (Homepage baru) Indoprog, dan perhatikan
status bar browser anda.
Anda dapat membuat suatu fungsi yang mengambil nilai item yang dipilih pemakai, dan
membuka halam yang diinginkan
function buka() {
var pilih = eval(document.dropdown.site.selectedIndex);
if( (pilih > 0) && (pilih < 7) ) {
var bagian=new BuatArray( '',
'http://indoprog.terrashare.com/tutor/html/index.html',
'http://indoprog.terrashare.com/tutor/javascript/index.html',
'http://indoprog.terrashare.com/tutor/asp/index.html',
'http://indoprog.terrashare.com/tutor/php/index.html',
'http://indoprog.terrashare.com/tutor/perl/index.html');
this.location=buka[pilih];
e t
}
}
a N
//-->
d r
</SCRIPT>
e n
<FORM NAME="dropdown"> H
By
<SELECT NAME="site" onChange='buka();' ALIGN="left">
<OPTION SELECTED>Pilih tutorial yang diinginkan
<OPTION>HTML
<OPTION>JavaScript
<OPTION>ASP
<OPTION>PHP
<OPTION>Perl
</SELECT>
</FORM>
Apa XML?
• HTML dimulai sebagai suatu cara dari cara untuk menjelaskan structure
dari dokumen, dengan tag-tag untuk mengindikasikan headers,
paragraphs, dan sejenisnya
• Karena orang menginginkan untuk mengontrol tampilan (appearance)
dari dokumen, maka HTML memerlukan tags lain seperti mengontrol
fonts, alignment, dll.
• Hasilnya adalah markup language yang dapat melakukan keduanya, tapi
tidak bagus/optimal untuk keduanya. e t
a N
HTML vs. XML d r
e n
H
B y
XML kelihatan seperti HTML, tapi
Penjelasan
Pada contoh diatas, bagian prolog berisi dua baris yang sifatnya opsional:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Edited with XML Spy v4.2 -->
e t
N
• Baris pertama adalah deklarasikan XML, yang menyatakan bahwa
a
r
dokumen tersebut merupakan dokumen XML versi 1.0. dengan
d
encoding=”ISO-88859-1.
e n
• Baris kedua merupakan baris komentar. Penambahan komentar
H
digunakan untuk membantu mengingatkan atau sebagai catatan bagi
By
developer. Komentar diawali dengan karakter <!-- dan diakhiri dengan
karakter -->.
• Setelah bagian prolog adalah bagian elemen dokumen. Bagian tersebut
merupakan sebuah elemen tunggal yang bisa berisi elemen-elemen tambahan.
Pada contoh di atas, elemen dokumen adalah catalog. Di dalam elemen
dokumen berisi elemen cd. Dalam setiap elemen anggota catalog terdapat
data-data berupa karakter.
Dari contoh di atas dapat dilihat bahwa dokumen XML tersusun secara
terstruktur berdasarkan tag-tag yang didefinisikan oleh pembuat dokumen. Dengan
struktur dokumen seperti ini ditambah kebebasan XML mendefinisikan tag baru,
menyebabkan XML menjadi pilihan untuk kebutuhan penyimpanan data.
Memungkinkan Pencarian Pintar, Salah satu masalah besar dengan Web yang
sekarang adalah bahwa Search Engine tidak dapat memproses HTML dengan pintar.
t
Misal, jika anda mencari seorang bernama “chip”, anda akan menemukan halaman
e
N
tentang Chocolate Chip, Computer Chip, binatang chipmunk dan orang yang
a
d r
bernama Chip. Tapi jika sudah ada DTD untuk records name dan address, pencarian
e n
orang yang bernama Chip dapat menghasilkan hasil yg lebih akurat dan berguna.
H
By
Aturan Penulisan XML (Sintaks XML)
Semua elemen XML haruslah mempunyai tag pembuka dan penutup
Tag XML adalah case sensitif (membedakan huruf besar dan kecil)
<Message>This is incorrect</message>
<message>This is correct</message>
Apa XSL?
XML document:
By XPath layaknya seperti paths
dalam sistim file komputer
<?xml version="1.0"?>
<library> / menunjukkan dokumen itu sendiri
<book> (tidak ada elemen specific)
<title>XML</title>
<author>Gregory Brill</author>
/library selects the root element
</book>
<book>
<title>Java and XML</title> /library/book selects setiap elemen
<author>Brett book
McLaughlin</author>
</book> //author selects setiap elemen
</library > author, dimanapun terdapat
books.xml
• <?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="book-titles.xsl"?>
<library>
<book>
<title>XML</title>
<author>Gregory Brill</author>
</book>
<book>
book.xsl
By
<MERK>Mitsubishi</MERK>
<HARGA_RENTAL>Rp. 400.000/hari</HARGA_RENTAL>
</RENTAL_MOBIL>
<RENTAL_MOBIL Stok="yes">
<JENIS_MOBIL>Bus</JENIS_MOBIL>
<MERK>Mercedes</MERK>
<HARGA_RENTAL>Rp. 800.000/hari</HARGA_RENTAL>
</RENTAL_MOBIL>
</INVENTARIS>
Rental.css
Contoh:
Pada contoh (file terpisah) tampilkan xml dalam html dengan teknik xslt dan css.
Misal: cdcatalog.xml dan cdcatalog.xsl. Kemudian kaitkan cdcatalog.xsl
pada cdcatalog.xml seperti berikut:
e t
a N
d r
e n
H
By
Kenapa DTD?
Parsers
e t
a N
• Parser XML adalah API (Application Programming Interface) yang membaca
content dari dokumen XML d r
e n
– API yang popular adalah DOM (Document Object Model) dan SAX (Simple API for
XML) H
By
• Parser Validasi adalah parser XML yang membandingkan dokumen XML terhadap
DTD dan melaporkan setiap error/kesalahan
– Kebanyakan browsers belum menggunakan parser validasi
Contoh XML
<novel>
<foreword>
<paragraph>This is the great American novel.</ paragraph>
</foreword>
<chapter number="1">
<paragraph>It was a dark and stormy night.</paragraph>
<paragraph>Suddenly, a shot rang out!</paragraph>
</chapter>
</novel>
Contoh DTD
<!DOCTYPE novel [
<!ELEMENT novel (foreword, chapter+)>
• Novel terdiri dari foreword dan satu atau lebih chapter, dalam hal ini
– Setiap chapter harus mempunyai nomor attribute
• Foreword terdiri dari satu atau lebih paragraph
• Chapter juga terdiri dari satu atau lebih paragraph
• Paragraph terdiri dari PCDATA (parsed character data) (teks yang tidak berisi elemen lain)
Deskripsi ELEMENT
• Suffixes:
? optional (pilihan) foreword?
+ satu atau lebih chapter+
* zero atau lebih appendix*
• Separators
, keduanya, dalam urutan foreword?, chapter+
| atau section|chapter
• Grouping
( ) grouping (section|chapter)+
–Kategory berupa (#PCDATA), menunjukkan bahwa hanya karakter data yang boleh
digunakan
•Cantoh dalam DTD: <!ELEMENT paragraph (#PCDATA)>
•Contoh dalam XML: <paragraph>A shot rang out!</paragraph>
•Catatan: Dalam (#PCDATA), whitespace di kept sesuai dengan yang di berikan
•Elements tidak boleh digunakan dalam parsed character data (PCDATA)
Entitas berupa character data dapat digunakan
• Semua nama element, attributes, dan entities, baik dalam DTD maupun XML,
berbentuk sebagai berikut:
– Nama dimulai dengan huruf atau underscore (garis bawah)
– Nama dapat terdiri dari hanya huruf, angka, titik-titik, hyphens, underscores, dan
colons
e t
N
• DTD tidak mengenal namespaces—DTD menganggap suatu colon sebagai bagian
a
dari nama
d r
– Contoh berikut adalah berbeda (dan keduanya legal):
•<!ELEMENT chapter (paragraph+)>
e n
H
•<!ELEMENT myBook:chapter (myBook:paragraph+)>
By
– Hindari penggunaan colons dalam nama, kecuali mengindikasikan namespaces
Contoh DTD
• <!DOCTYPE novel [
<!ELEMENT novel
(foreword, chapter+, biography?, criticalEssay*)>
<!ELEMENT foreword (paragraph+)>
<!ELEMENT chapter (section+|paragraph+)>
<!ELEMENT section (paragraph+)>
<!ELEMENT biography(paragraph+)>
<!ELEMENT criticalEssay (section+)>
<!ELEMENT paragraph (#PCDATA)>
]>
Attributes
• Format dari attribute adalah:
<!ATTLIST element-name
name type requirement
name type requirement>
diman name-type-requirement dapat diulang sebanyak yang dinginkan
– Untuk pemisah bagian-bagian dilakukan hanya dengan spaces (Oleh karenanya perlu kehati-hatian)
– Element-name memberi tahu elemen mana yang dapat memeliki atribut ini
– Name adalah nama dari attribute
– Setiap element mempunyai type (jenis), seperti CDATA (character data)
– Setiap element dapat seabagai: required, optional, atau “fixed”
– Dalam XML, attribute dapat muncul dalam urutan sembarang
Requirements
Entities
• Ada lima entitas yang telah ditetapkan: <, >, &, ", and '
• Entitas tambahan dapat ditentukan dalam DTD:
<!ENTITY copyright "Copyright Dr. Dave">
• Entitas dapat didefenisikan dalam document lain:
<!ENTITY copyright SYSTEM "MyURI">
• Contoh penggunaan dalam XML:
This document is ©right; 2002.
• Entitas jangan dibingungkan dengan referensi character yang merupakan nilai antara
& dan #
• Contoh: &233#; atau &xE9#; sebagai indikasi karakter é
Inline DTDs
Page 162 / 197
http://www.hendra-jatnika.web.id
• Jika suatu DTD digunakan hanya satu dokumen XML, dapat diletakkan langsung
dalam dokumen:
<?xml version="1.0">
<!DOCTYPE myRootElement [
<!-- DTD content goes here -->
]>
<myRootElement>
<!-- XML content goes here -->
</myRootElement>
External DTDs
• External DTD (DTD yang terpisah dari dokumen) di deklarasikan dalam SYSTEM
atau PUBLIC:
<!DOCTYPE myRootElement SYSTEM
"http://www.mysite.com/mydoc.dtd">
– Nama yang muncul setelah DOCTYPE (dalam contoh ini, myRootElement) harus sesuai (match)
dengan elemen root dari XML:
– Gunakan SYSTEM untuk external DTDs yang didefenisikan oleh sendiri, dan PUBLIC untuk resmi
(official) yaitu DTD yang dipublish.
– External DTDs direferensikan dalam URL
• Extension file untuk external DTD adalah .dtd
Keterbatasan DTD
e t
• DTDs merupakan bahasa spesifikasi yang sangat lemah
a N
r
– Kita tidak dapat meletakkan pembatasan pada konten elemen
d
– Sulit untuk spesifikasi:
e n
Semua children harus muncul, tapi dapat dalam urutan sembarang
•
H
This element must occur a certain number of times
•
By
–There are only ten data types for attribute values
• But most of all: DTDs aren’t written in XML!
–If you want to do any validation, you need one parser for the XML and another for the
DTD
–This makes XML parsing harder than it needs to be
–There is a newer and more powerful technology: XML Schemas
–However, DTDs are still very much in use
Validators
• Opera 5 and Internet Explorer 5 can validate your XML against an internal DTD
–IE provides (slightly) better error messages
–Opera apparently just ignores external DTDs
–IE considers an external DTD to be an error
• jEdit (my favorite editor) with the XML plugin will check for well-structuredness
and (if the DTD is inline) will validate your XML each time you do a Save
–http://www.jedit.org/
Disain web atau disain situs merupakan komponen penting dalam membangun bisnis
berbasis web atau yang dikenal dengan E-commerce. Disain web merupakan bidang multi
disiplin yang dipengaruhi oleh antara lain: disain grafis, pemrograman, teknologi
cilent/server, ilmu kepustakaan (library science), disain user interface dan lain sebagainya.
Aspek penting dari disain web adalah perancangan dan pengorganisasian content (isi)
dari situs web, kemudian pertimbangan visual, teknologi dan pertimbangan ekonomi.
d r
Kegunaan/Purpose
e n
(Ekonomi)
H Content merupakan batu bata yang
By
digunakan membangun piramida.
Untuk itu perlu fondasi yang kuat
yaitu yang digambarkan oleh visual
dan teknologi. Sedangkan
penekanan ekonomi menjadikan
Content
projek mempunyai nilai.
User Disainer
Bentuk /Form Fungsi
(Visual) (Teknologi)
Defenisi
Persoalan
- Eksplorasi Konsep
Analisa
Kebutuhan
- Spesifikasi
Desain
- Prototipe
Integrasi dan
Pengujian Sistim
Pertama yang perlu diketahui adalah kegunaan atau tujuan dari situs dibanguna.
Secara seksama didefenisikan problem dari situs yang mengacu pada setiap goal
yang hendak dicapai.
Setelah goal ditetapkan, kemudian ditentukan spesifikasinya. Spesifikasi ini
merupakan syarat-syarat untuk situs dimana dalam hal ini perlu dipertimbangkan
faktor audience (pemirsa).
e t
a N
Langkah selanjutnya memulai pembangunan situs termasuk prototipe secara
teknik dan visual
d r
n
Selanjutnya tahap implementasi hasil dari disain dan melakukan pengujian
e
(Integrasi dan Pengujian).
H
Terakhir adalah Rilis (Release) atau Publikasi situs. Kadang-kadang masih
By
diperlukan modifikasi berdasarkan umpan balik dari user.
WebSite/HomePage:
Merupakan suatu kesatuan dari document-dokumen yang terhubung dengan atribut yang
sama (misalnya: Topik, Fungsi, ataupun system Desain yang sama).
Jadi sebuah WebSite memiliki banyak dokumen yang biasanya disebut halaman Web
(WebPage), serta komponen lain seperti Image, Media, dan obyek-obyek yang berhubungan.
Berdasarkan Isi maupun Tujuan, WebSite biasanya dapat digolongkan, antara lain:
1. Profil Perusahaan (Company Profile), Profil Pribadi (Artis, Curiculum Vitae, Web
e t
Personal, dst) Berfungsi sebagai media Presentasi, informasi, publikasi, Promosi,
N
dan Pemasaran. Web ini harus memiliki daya tarik bagi pengunjung untuk menyimak
a
d r
isi web sehingga faktor desain menjadi paling utama.
2. Informasi/Berita, Media Informasi dan Berita adalah yang terutama (Majalah/Koran
n
online). Keakuratan dan kelengkapan informasi dari web semacam ini sangat
e
penting.
H
3. Services, Media untuk pelayanan, seperti Free Email, Search Engine, SMS via
By
Internet, E-Commerce (Media Transaksi Online), dst.
Dengan tujuan dan target yang jelas maka kita dapat mempersiapkan isi/Content
yang akan ditampilkan.
Contoh:
Kirim Berita
NamaWeb
Images
Gambar1.JPG
Gambar2.JPG
Logo.GIF
index.html Sebagai Halaman Cover / halaman Pertama,
AboutUs.html Nama yang telah standard secara internasional,
Product.htm
Clients.htm e t
adalah: Index.html atau Default.html
ContactUs.htm
a N
News.htm
d r
e n
H
By
Faktor yang perlu diperhatikan dalam Rancangan Tampilan Web.
1. Semantik
Menyangkut Kesesuaian Tema, Konsep Desain yang ditampilkan, dst.
Unik :
Dalam membuat karya apapun seorang designer mempunyai kesadaran untuk tidak
meniru atau menggunakan karya orang lain. Begitu pula seorang Web Designer
harus mempunyai budaya malu untuk menggunakan icon, animasi, button, dll, yang
telah digunakan atau dibuat oleh orang lain.
Komposisi :
Seorang Web Designer selalu memperhatikan komposisi warna yang akan digunakan
dalam website yang dibuatnya. Pergunakan selalu Palette 216 WebColor, RGB.
Web Colour :
Dalam membangun website suatu perusahaan, Web Designer harus peka dalam
menyesuaikan warna yang digunakan dengan Corporate Color perusahaan tersebut
(Colour Company).
Contoh: Telkom Corporate Color-nya adalah biru, Coca-Cola : merah dan putih,
Standard-Chartered : hijau dan biru, dsb. Untuk kemudian warna-warna tadi
digunakan sebagai warna dominan atau sebagai elemen pendukung [garis,
background, button, dsb].
Simple :
Web Designer banyak yang menggunakan prinsip "Keep it Simple", hal ini ditujukan
agar tampilan website tersebut terlihat rapi, bersih dan juga informatif.
2. Sintaktik
Kesatuan dan Keterpaduan Desain,
Adalah penting dalam segi estetika maupun segi navigasi, supaya netter tidak
mengalami kebingungan dalam menelusuri halama-halaman web yang dibuat.
e t
N
Contoh: memiliki kesamaan tema dalam halaman-halaman webnya.
a
Keterpaduan Desain, dapat dilihat seperti:
d r
n
Kesamaan Jenis Font, Warna, Tombol Navigasi (Menu), Letak Menu, Komposisi, dst.
e
H
By
Fokus dan Hirarki :
Contoh: tentukan hirarki prioritas dari pesan yang akan disampaikan, misalnya:
Judul harus besar, tetapi jangan sampai akhirnya akan konflik dengan subjudul
yang berukuran hampir sama. Hal ini akan membingungkan user [audience] untuk
menentukan pesan mana yang harus lebih dahulu dibaca [dilihat].
Konsisten :
Contoh: tentukan font apa yang akan digunakan sebagai Body-text, Judul, Sub
Judul, dan sebagainya, sehingga website tersebut akan terlihat disiplin dan rapi.
Sesuaikan jenis huruf yang digunakan dengan misi dan visi website tersebut.
3. Pragmatik
Dalam hal ini menyangkut kemampuan Teknis dan pemahaman akan
kemampuan/kekurangan Software yang digunakan dalam mendesain Web.
Kemampuan, Pemahaman, dan wawasan akan software-software tersebut
diharapkan Web Designer dapat se-Efektif + Se-Efesien mungkin dalam proses
perancangannya.
Ergonomis :
Web Designer selalu memperhatikan aspek ergonomi. Ergonomi disini adalah dalam
hal kenyamanan user dalam membaca dan kecepatan user dalam menelusuri
website tersebut. Web Designer memilih ukuran Fonts yang tepat sehingga mudah
dibaca, Web Designer menempatkan link sedemikian rupa sehingga mudah dan
cepat untuk di akses dan lebih penting lagi adalah Informatif.
FONT
Gunakan Font yang umum agar tidak terjadi ‘Missing Font’ yang menyebabkan
kekacauan pada Web yang telah kita rancang. Font Umum yang dimaksud
adalah Font yang telah ‘ter-Instal’ Secara umum (Otomatis) oleh Komputer (PC
/ MAC) - (pada umumnya) saat menginstal Windows / Browser.
(Catatan: Untuk mengatasi Missing Font, telah dikeluarkan bahasa khusus yaitu
DHTML).
WARNA
Gunakan dengan Format RGB
Karena Tampilan Web dilihat pada Monitor (Warna yang terbentuk oleh Cahaya)
- bukan seperti CMYK (Pada media Cetak)
e t
Ukuran PIXEL
a N
Gunakan PIXEL Sebagai satuan ukuran.
d r
e n
Resolusi Monitor H
By
Saat ini sangat umum Web berpatokan pada ukuran
Resolusi Monitor 800 x 600
(Sudah jarang Web yang berpatokan dibawah resolusi tersebut)
GIF :
Menampilkan 256 warna saja, bisa merupakan GIF Animasi,
dan dapat Transparant.
JPG :
Format Gambar yang penuh warna (Full Colour),
membentuk gradasi dengan sangat baik dengan kompresi yang tinggi.
Di atas adalah sebagian kecil kendala yang ada karena Teknologi tidak luput dari banyak kendala.
Walau demikian, jangan jadikan Teknologi sebagai penguasa. Jadikan Teknologi sebagai “Alat
Bantu”, bukan kita diperbudak Teknologi, tetapi Teknologi adalah Budak kita !
“It’s the Man behind the Gun”
Demikian beberapa aspek dan prinsip yang digunakan Web Designer dalam
membuat website, selebihnya merupakan ekspresi dari pembuat website itu
sendiri
yang terwujud dalam penggayaan penyusunan website.
Desain :
Untuk membuat desain suatu homepage biasanya para web designer dimulai dengan
software ini sebagai tampilan sementara atau dalam membuat layout homepage.
1.
2.
Adobe Photoshop : Desain berbasis titik (bitmap/Pixel)
e t
Adobe Image Ready : Memotong gambar-gambar ke dalam format html
3.
a
Adobe Illustrator : Desain berbasis vector N
4. CorelDraw : Desain berbasis vector
d r
5.
n
Macromedia Freehand : Desain berbasis vector
e
Efek Desain : H
By
Hal ini dilakukan untuk menghidupkan desain yang telah kita rancang. Seperti menambah
efek cahaya, textur dan manipulasi teks.
1. Plugins Photoshop : Seperti Andromeda, Alien Skin, Eye Candy, Kai's Power
Tool dan Xenofex juga sangat mendukung untuk memberi efek desain sewaktu
anda mendesain layout homepage di Adobe Photoshop / Image Ready.
2. Macromedia Firework : Efek teks
3. Painter : Memberikan efek lukisan
4. Ulead Photo Impact : Efek frame dan merancangan icon yang cantik.
Animasi :
Penambahan animasi perlu untuk membuat homepage agar kelihatan menarik dan hidup.
Web Editor :
Menyatukan keseluruhan gambar dan tata letak desain, animasi, mengisi halaman web
dengan teks dan sedikit bahasa script / Html.
1. Macromedia Dreamweaver
2. Microsoft Frontpage
3. Alaire Homesite
4. Adobe Go Live
5. Corel WebDesigner
6. Cold Fusion
7. Net Object Fusion
Programming :
Hal ini dilakukan setelah sebagian besar desain homepage telah rampung. Programming
bertugas sebagai akses database, form isian, dan membuat web lebih interaktif.
Contoh : Membuat guestbook, Form isian, Forum, Chatting, Portal, Lelang, dan Iklanbaris.
Upload :
File html kita perlu di letakkan (upload) di suatu tempat (hosting)
agar dapat diakses di seluruh dunia.
1. Bullet FTP
e t
2.
3.
Cute FTP
WS-FTP
a N
4.
d r
Macromedia Dreamweaver : dengan fasilitas Site FTP
5.
n
Microsoft Frontpage : dengan fasilitas Publish
e
Sound Editor : H
1.
By
Untuk mengedit file midi atau wav, perlu alat khusus untuk itu.
Sound Forge : Mengedit dan menambah efek file yang berformat mp3 dan wav.
2. Cakewalk : Mengedit dan menambah efek untuk file yang berformat midi
Banyak sekali memang software untuk membuat suatu homepage dan kita tidak perlu
mempelajari semua software tersebut di atas. Tapi untuk mempermudah, bagi pemula
dalam mendesain web lebih baik dimulai terlebih dulu dengan mempelajari software Web
Editor seperti Microsoft Frontpage atau Macromedia Dreamweaver agar lebih mengenal
aturan-aturan membuat homepage dan mengenal bahasa html.
Software yang memang ‘khusus’ dibuat oleh Adobe untuk keperluan Web Design.
(Seperti halnya dengan Adobe Photoshop) fungsi Image Ready adalah untuk memanipulasi
Image, me-retouch, memberi effect-effect pada image, dst dengan Optimized
(kompressi) yang dirancang khusus untuk keperluan Web.
Mungkin tidak asing lagi dengan nama Flash. Macromedia Flash merupakan salah satu
Software yang sering digunakan dalam membuat animasi berbasis Web dengan format
Shockwave (.SWF).
Untuk melihat file SWF melalui browser generasi awal diperlukan Pug-in Khusus.
Dengan berkembangnya popularitas Flash, system Windows dan Machintosh serta browser
generasi terbaru sudah mendukungnya tanpa perlu Plugin) .
Banyak orang dibuat kagum olehnya, disebabkan karena ukuran filenya yang begitu kecil
tetapi dapat menampilkan animasi di web yang luar biasa mengagumkan. Segala bentuk
effect, sound, games interaktif, dst dapat dibuat dalam software ini.
FLASH dimulai sebagai software untuk membuat animasi cel (Baca: Kartun) bernama
Future Splash. Dengan perangkat ini, dimungkinkan untuk membuat animasi dengan
ukuran kecil untuk didistribusikam melalui Internet. Dengan kemampuan Macromedia di
bidang Multimedia, FLASH kini dikembangkan menjadi perangkat Multimedia Interaktif.
e t
a N
d r
e n
H
By
Menurut Fungsinya:
e t
a N
d r
e n
H
Button Sub Menu, Contoh:
By
Navigasi, Contoh:
Back
(Back to Top)
Next
Menurut Bentuknya:
Icon Menu :
Tombol Menu yang disertai Simbol/Grafis yang unik.
e t
a N
d r
e n
H
By
Hover Button :
Tombol yang memiliki efek/berubah bila disentuh kursor mouse.
Bullets :
Icon Kecil. (Lihat :)
Web Application :
Original Concept Application Design
Database design
Database manipulation application
Database Technology :
Mapping Database
2. Form Field
Text Box
e t
a N
Memo Box
d r
e n
H
By Check Box
3. Lain-lain
Site Map
Struktur Web dalam bentuk bagan
Index.html / Default.html
Merupakan nama file untuk halaman pertama dan sudah merupakan standard
perancangan web saat ini.
Hit Counter
Angka yang menunjukkan jumlah pengunjung.
Banner
Banner Sponsor /Informasi Singkat /Promosi produk tertentu.
Agar menarik, biasanya dibuat animasi atau memakai effect-effect tertentu.
Contoh :
info@siloamgleneagles.com
e t
Please send comments, feedback, and suggestions to
a
Copyright ©1999 - Siloam GleneaglesN
About Webmaster - Last update on 5 July 2002
d r
e n
Get a better view from our web site through 800x600 screen resolution,
High Colour 16 Bit and more features by access with Internet Explorer 4.0.
H
By
Data contained here in is solely for information only & should not be used as a basis for any transaction
whatsoever.
Siloam Gleneagles shall not be held liable or responsible for any inaccuracies in the data
obtained from outside sources.
GUESTBOOK
Buku tamu biasa digunakan supaya pengunjung web kita dapat meninggalkan
pesan dan kesannya tentang web Anda.
WEB HOSTING
Tempat menyimpan file html, agar desain homepage kita dapat dilihat oleh
pengunjung di seluruh dunia.
CHATTING
Fasilitas ngobrol.
MAILING LIST
Membuat komunitas lewat email yang membicarakan hal-hal tertentu bersama
orang lain.
WEB STATISTIK
Melihat statistik homepage Anda. Dari mana saja pengunjung berasal, browser
apa saja yang mereka pakai, hari apa saja homepage kita ramai dikunjungi
orang.
WEB CHECK
Mengetahui kecepatan loading dan spesifikasi tentang homepage anda.
Konsultasi
Message Board
By
kita harus menerima bila ingin menggunakan fasilitas gratis tersebut.
Web Hosting
Pilihlah Rumah Yang Nyaman Untuk Homepage Anda!
Pada saat Anda membangun sebuah situs web atau homepage, pada saat itu juga Anda
harus berpikir web hosting mana yang ingin digunakan. Sebab agar situs yang Anda buat
dapat dilihat pengunjung dari segala penjuru dunia, file web tersebut mau tidak mau harus
diletakan di sebuah server web yang tersambung ke internet 24 jam setiap hari.
Komputer atau server tersebut dapat berupa komputer di rumah, kantor atau di service
web hosting yang banyak bertaburan di internet. Dan apapun yang Anda pilih, selalu ada
pro dan kontra yang harus diperhitungkan baik-baik.
Saat ini ada banyak perusahaan yang menyediakan tempat gratis untuk menempatkan situs
web Anda misalnya, Geocities, Tripod dll. Persoalannya sekarang adalah: Anda harus
memilih yang mana? Yang gratis atau yang bayar? Apakah harus memilih tempat yang gratis
tersebut atau menyewa tempat di suatu perusahaan web hosting?
Semua pilihan - akhirnya - kembali harus Anda yang memutuskan. Sebagai satu
pertimbangan terpenting adalah seberapa serius Anda membuat situs web tersebut. Jika
hanya main-main, iseng, atau kepepet, tentu situs gratis harus Anda jadikan pilihan. Tetapi
jika Anda ingin serius serta takut jatuh gengsi, maka yang Anda harus pilih adalah jasa web
hosting dan web design profesional.
Apa sih bedanya yang signifikan? Silahkan Anda baca tabel dibawah ini:
CATATAN:
Tidak ada situs web yang tidak bermasalah. Misalnya, Anda tidak bisa
meng-update isi, situs tidak bisa di akses, dan yang paling parah adalah
situs Anda di hack orang. Jika salah satu contoh diatas terjadi, yang
harus Anda lakukan adalah menghubungi bagian customer service.
Hati-hati, banyak perusahaan yang menawarkan kecepatan akses!
Supaya Anda tidak terjebak, jika memungkinkan, Anda harus melihat
dalam server macam apa data Anda akan tersimpan. Kalau Anda punya
duit cukup banyak, lebih bagus bila Anda memasang server sedniri
[server colocation] di sebuah perusahaan ISP, web hosting atau data
center.
Cari tahu berapa banyak situs web yang tersimpan di satu server.
a N
Tanyakan pada web hosting yang Anda pilih, apakah perusahaannya
r
membuat backup secara teratur. Seandainya tidak, lekas-lekaslah Anda
d
n
angkat kaki dan mengucapkan selamat tinggal. Cari perusahaan yang
e
lain!
H
Keamanan. Bagian ini amat penting. sebab data Anda yang tersimpan
By
harus aman 'lahir-batin'. Syukur-syukur ada asuransi yang bisa Anda
klaim, kalau server perusahaan tersebut mengalami kerusakan yang
cukup lama.
Jika Anda ingin membuat sebuah web pages yang kecil dan sangat sederhana,
sebaiknya pilih yang gratis saja. Ada banyak situs-situs yang menyediakan layanan
gratis ini.
Pada web hosting gratis yang cukup terkenal seperti Geocities telah menyediakan
beberapa cara untuk membuat dan mem-promosikan situs Anda dengan beberapa
langkah mudah. Tool pembuatan situsnya terbagi dalam dua kategori: PageWizard
untuk pemula, dan File Manager and Advanced HTML Editor untuk pemakai yang
lebih mahir.
Untuk pemula, Anda tinggal menjawab beberapa pertanyaan yang sudah tertera di
sana, dan Geocities akan langsung membuatkan sebuah situs yang menarik untuk
Anda.
Fasilitas pendukung [Add On] yang diberikan oleh Geocities sangat beragam. Dari
mulai Hits Counters, Guest Book, Statistik, Keadaan Cuaca, Game sampai Web
Camera! Anda dapat menambahkan semua fasilitas yang tersedia secara cuma-
cuma.
Berbeda dengan Geocities yang hanya menyediakan tempat gratis sebesar 15 MB,
Tripod akan menyediakan 50 MB untuk Anda. Selain mendukung fasilitas FTP dan
Frontpage 2000, Anda juga dapat memilih applikasi CGI Script serta Javascript. Bila
bergabung ke Lycos, Anda akan diberikan e-mail dan voicemail, instant messaging,
download software dan mendengarkan lagu-lagu kesukaan Anda. Semuanya - sekali
lagi - gratis!!!
Nah, jadi tunggu apa lagi? Masih banyak kok situs-situs yang menyediakan web
hosting gratis. Kapasitas dan fasilitasnya - tentu saja - berbeda-beda. Anda bisa
memilih yang mana saja sesuai selera!
Ada bermacam-macam langkah yang digunakan profesi web untuk membuat suatu
website/ homepage. Berikut ini adalah proses secara umum yang dilakukan
kebanyakan profesi web di Indonesia untuk membuat web.
e t
Untuk itu jangan pernah melupakan “Sketsa” dalam memulai setiap
rancangan… karena perencanaan yang baik adalah Sketsa. (sketsa adalah
“Senjata utama” seorang desainer). a N
2.
d r
Membuat Layout Desain : Setelah sketsa sudah jadi, kita menggunakan
n
software seperti Adobe Photoshop /Adobe Illustrator /Macromedia
e
H
Fireworks /Macromedia Freehand, dan banyak lagi (sesuai selera) untuk
memperhalus sketsa desain.
3.
By
Membagi gambar menjadi potongan kecil-kecil : Setelah layout desain
homepage sudah jadi. File gambar tersebut dipecah menjadi potongan
kecil-kecil untuk mengoptimize waktu download pengunjung situs. Untuk
melakukan hal tersebut dapat digunakan software Adobe Image Ready.
Software ini dapat langsung memotong gambar yang besar tadi dan
otomatis juga menjadikannya ke dalam format html.
4. Membuat Animasi : Animasi diperlukan untuk menghidupkan
web/homepage kita agar menarik pengunjung. Macromedia Flash dan Gif
Construction Set dapat dipakai untuk melakukan hal tersebut.
5. Membuat HTML : Setelah itu kita merapikan layout desain kita seperti
menempatkan beberapa tombol dan gambar, menambah text, mengedit
script HTML, membuat layout form ke dalam format HTML. Untuk itu kita
perlu software HTML Editor seperti Macromedia Dreamweaver, Microsoft
Frontpage, dll (sesuai selera).
6. Programming dan Script : Untuk website e-commerce, iklan baris, lelang,
database, membuat guestbook, counter, dan forum diskusi. File HTML kita
perlu programming untuk melakukan aktivitas semacam itu. Programming
dan script ini bisa dibuat dengan menggunakan ASP, Borland Delphy, CGI,
PHP, Visual Basic. Dan perlu diperhatikan bahwa programming dan script
ini biasanya dilakukan setelah desain web/homepage kita telah jadi.
7. Upload HTML : Setelah file kita telah menjadi html beserta gambar dan
scriptnya, kita perlu meng-upload file kita ke suatu tempat (hosting0, agar
semua orang di dunia dapat mengakses halaman html kita. Biasanya
Macromedia Dreamweaver dengan fasilitas site FTP dan Microsoft
Setelah Anda selesai mendesain dan meng-upload file bukan berarti tugas Anda
sudah selesai. Apa artinya Anda punya website tapi nggak ada orang yang tahu ?
Nah, supaya website Anda dikenal orang ada beberapa cara yang bisa Anda
lakukan, yaitu :
e t
N
Yang pertama, pada saat Anda mendaftar pada suatu search engine Anda
a
d r
harus memasukkan keyword dan deskripsi singkat tentang web site Anda.
Contohnya Search Indonesia, Catcha, Google dll.
e n
H
Yang kedua, pada saat mendaftar Anda cukup menunjukkan URL website
By
Anda. Setelah itu, search engine tersebut akan "menjelajah" ke web Anda
dan mencari keyword dan deskripsi yang terletak pada meta tag halaman
web Anda. Untuk itu, sebelum upload, pastikan bahwa Anda telah
menuliskan meta tag tersebut dengan benar.
- Web Designer - Web Programmer - Web Administrator - Web Master - Web Developer
Web Designer
Tugasnya adalah pendisainan tampilan situs (web) mulai dari pengolahan gambar, tata
letak, warna, dsb. Didalam pendandanan suatu situs seorang Web Designer harus menguasai
:
- HTML, DHTML
- Pengolah Gambar
- Animasi, Movie (Film)
Web Programmer
Jika situs yang akan dibuat mempunya fasilitas interaksi antara pengunjung dan situs
misalnya menyangkut dengan transaksi, input output data dan database maka seorang Web
Programmer yang akan mengerjakannya dengan membuat aplikasi-aplikasi yang berkerja
diatas situs (web). Penguasaan yang biasanya harus dikuasai pada umumnya oleh Web
Programmer :
- CGI Perl, PHP, MySQL (Unix base)
- ASP (NT base)
Web Administrator
e t
Tugasnya adalah untuk memaintenance suatu server, mengerti akan Sistem Operasi Server,
N
baik itu mulai dari instalasi sampai kepada masalah (troubleshooting), biasanya seorang
a
Web Administrator harus menguasai :
- OS Unix (LInux, FreeBSD, dll)
d r
- OS NT
e n
- Jaringan (LAN, WAN, Intranet)
- Keamanan Server H
Web Master By
Seoarang Web Master adalah seorang yang mengerti akan kesemua hal mulai dari desain,
program dan keamanan server namun tidak terlalu turut mencampuri ke masing-masing
divisi, cukup dengan mempertanggun jawabkan atas jalannya suatu situs (web). Penguasaan
yang harus dimiliki :
- HTML, DHTML
- Web Desain (DreamWeaver, Flash, Adobe)
- CGI Perl, PHP, MySQL, ASP, Java
- Penguasaan bermacam OS (Operating System)
- Keamanan Server
- Jaringan (LAN, WAN, Intranet)
Web Developer
Kegiatan diatas secara keseluruhan dinamakan suatu team yang dinamakan Web Developer.
Dari kesemua penjelasan ini hanya bersifat pada umumnya, jika ada kerangkapan tugas
maupun penambahan penguasaan dan pengetahuan, semua tergantung dari kebutuhan
pihak masing-masing.
e t
a N
d r
e n
H
By
By
informasi. Dengan terdaftarnya website Anda di search engine berarti akan memudahkan
orang lain mencari informasi produk/jasa yang Anda tawarkan. Yang lebih penting lagi,
informasi Anda akan jatuh pada orang yang tepat, karena pencarian pada search engine
disesuaikan pada keyword/kata kunci serta sistem direktori yang sangat terstruktur.
Sebelum melangkah lebih lanjut ada baiknya kalau Anda mengetahui apa itu search
engine, bagaimana mereka bekerja, dan apa perbedaan antara search engine dan directory.
Search engine merupakan sebuah sistem database yang dirancang untuk meng-index alamat-
alamat internet (URL, FTP, usenet, dll). Untuk melaksanakan tugasnya ini, search engine
memiliki program khusus yang biasanya disebut spider, bot, atau crawler. Pada saat Anda
mendaftarkan sebuah alamat web (URL), spider dari search engine akan menerima dan
menganalisa URL tersebut. Dengan proses dan prosedur yang serba otomatis, spider ini akan
memutuskan apakah web yang anda daftarkan layak diterima atau tidak. Jika layak, spider
akan menambahkan alamat URL tersebut ke sistem database mereka. Rangking-pun segera
ditetapkan dengan algoritma dan caranya masing-masing. Jika tidak layak, terpaksa Anda
harus bersabar dan mengulangi pendaftaran dengan periode tertentu. Jadi semua yang
namanya search engine, pasti memiliki program yang disebut Spider. Dan program inilah
yang sebenarnya menentukan apakah web site Anda bisa diterima atau tidak. Contoh
beberapa search engine terkenal adalah : Altavista, Google, Lycos, Northern Light, Hotbot,
dan masih bayak lagi.
Berbeda dengan directory yang meng-index halaman web secara manual. Manual yang
dimaksud adalah mereka menggunakan orang biasa untuk menganalisa setiap halaman web
yang masuk. Tidak menggunakan spider atau crawler seperti halnya search engine.
Keunggulan directory dibanding search engine adalah memberikan hasil pencarian yang lebih
relevan dengan kualitas yang relatif lebih baik. Tapi karena semua proses dilakukan secara
manual menggunakan editor manusia, jumlah database yang dimiliki biasanya jauh lebih kecil
dibandingkan dengan search engine. Itulah sebabnya sekarang ini banyak perusahaan yang
mengelola directory menerapkan sistem ganda, yaitu menggunakan directory + search engine.
Contoh nyata adalah Yahoo yang menggandeng Google sebagai search engine default-nya.
Contoh beberapa directory terkenal selain Yahoo adalah Open Directory Project, Looksmart,
dan NBCi.
Setelah mengetahui perbedaan antara search enginan dan directory, bagian
selanjutnya akan menjelaskan bagaimana mengoptimalkan halaman web Anda (dari segi
HTML), sebelum didaftarkan ke search engine. Akan sangat baik kalau Anda sebelumnya
sudah mengerti atau pernah belajar bahasa HTML, karena yang akan dibahas pada tutorial ini
banyak berhubungan dengan teknis penulisan HTML. Bagi yang sama sekali belum pernah
mempelajari HTML, saya sarankan untuk membaca tutorialnya terlebih dahulu. Tidak perlu
secara detail, cukup dasar-dasarnya saja. Tutorial HTML yang lumayan lengkap dapat Anda
temukan disini.
Memiliki halaman web yang enak dipandang mata, belum tentu memberikan
hasil yang baik pada search engine. Pada bagian ini akan dijelaskan bagaimana cara
mengoptimalkan halaman web dengan tag-tag HTML khusus, dan hal-hal apa saja
yang mempengaruhi rangking pada Search Engine.
d r
Keyword pada domain name, jika suatu website yang berisi koleksi lagu-lagu mp3 misalnya,
n
akan sangat baik kalau digunakan domain www.mp3.com. Ini adalah cara kuno, tetapi sampai
e
H
saat ini masih tetap dipakai oleh search engine.
Keyword pada nama file, misalnya Anda memiliki halaman web yang berisi informasi
By
mengenai hotel di bali, sebaiknya disimpan dengan nama bali-hotels.html, ini juga akan
mempengaruhi rangking.
Keyword pada page title, tag <title> pada halaman HTML sangat penting untuk
dioptimalkan. Usahakan agar title yang digunakan mengandung keyword yang relevan
dengan isi halaman web.
Keyword pada headline, bagi Anda yang sudah menguasai HTML tentu mengenal tag
<H1>,<H2>, dst. Tag headline sangat baik dipakai untuk judul sebuah paragraf, misalnya :
<H1>Hotels in Bali</H1>. Headline sangat diperhitungkan oleh Search Engine.
Keyword yang relevan pada meta tag, Meta tags, adalah tag-tag HTML khusus yang
digunakan untuk menggambarkan keseluruhan dari isi web Anda. Meta tag akan kita bahas
secara khusus di bagian berikutnya. Janganlah menggunakan keyword yang sama sekali tidak
ada hubungannya dengan isi halaman web Anda. Hal ini bisa dideteksi oleh search engine dan
akan dianggap spamming.
Keyword pada page content, keyword yang diharapkan harus terdapat pada isi
halaman web. Gunakan juga frase atau kata-kata lain yang berhubungan dengan
keyword utama.
Link Popularity, adalah jumlah halaman web lain yang memasang link ke web site
Anda. Beberapa search engine utama sangat memperhatikan hal ini. Semakin besar
link popularity suatu web site, rangkingnya akan semakin tinggi.
Beberapa poin yang dijelaskan diatas akan dibahas lebih mendalam. Jika web site
sudah dioptimalkan sesuai dengan 7 poin tersebut, diharapkan akan mendapat
rangking yang baik pada search engine.
Ada banyak meta tag sesuai dengan standar HTML 4.0 dari World Wide Web
Consortion, tapi sebenarnya yang betul-betul dipakai oleh search engine hanya 3,
description, keyword, dan robots. Lihat pada lampiran untuk mengetahui labih lanjut
Meta Tag.
e t
Meta Tag Keyword
a N
Meta tag keyword sangat penting keberadaannya, karena menentukan kata kunci apa
d r
yang bisa menemukan halaman web tersebut pada search engine. Sintak dasar dari meta tag
keyword adalah sebagai berikut :
e n
H
<meta name="keywords" content="keyword1 keyword2 keyword3 ...">
atau ada juga yang menulis dengan pemisah tanda koma :
By
<meta name="keywords" content="keyword1, keyword2, keyword3, ...>
Keduanya berfungsi sama dan tidak ada pengaruhnya pada search engine. Tujuan pemakaian
tanda koma agar keyword-keyword tersebut lebih mudah dibaca. Yang perlu diperhatikan
disini adalah jangan mengulang sebuah kata lebih dari 3 kali, karena akan dianggap
spamming. Contoh pemakaian meta tag keyword yang salah adalah :
<meta name="keywords" content="bali, bali hotels, travel in bali, bali island, bali weather>
Disini terlihat sekali bahwa kata "bali", diulang lebih dari 3 kali. Contoh berikut ini tidak akan
dianggap spamming oleh search engine :
Tujuan utama penggunaan meta tag robots adalah untuk menentukan halaman web
yang mana bisa di-index oleh spider dan halaman web mana yang tidak. Tag ini sangat
berguna sekali terutama jika seuatu website memakai frame untuk navigasinya. Tentunya kita
tidak ingin menampilkan menu-menu dalam frame untuk dibaca oleh search engine. Format
dasar dari meta tag robots adalah sebagai berikut :
e t
yang menarik dan enak untuk dibaca. Tetapi usahakan agar keyword-keyword pada meta tag,
terpakai pada kalimat-kalimat di awal paragraf. Jagalah agar topiknya tidak terlalu meluas dan
a N
tetap spesifik. Sebuah halaman web yang baik hanya berisi dua sampai tiga fokus bahasan.
r
Tip-tiperikutmerupakan langkah selanjutnya untuk mengoptimalkan halaman web: .
d
e n
Perhatikan penggunaan gambar. Hindari penggunaan gambar/image yang terlalu berat pada
web Anda. Usahakan agar ukuran halaman web + gambar tetap dibawah 64 kb. Gunakan
H
software-software seperti Adobe Photoshop (menu file - save for web) untuk mengoptimalkan
By
gambar. Penggunaan Flash dan Java yang berlebihan sebaiknya dihindari.
Hindari pemakaian frame. Frame memang baik dipakai sebagai navigasi, tetapi bisa
membingungkan search engine. Halaman utama frameset biasanya tidak berisi content apa-
apa. Kalaupun Anda terpaksa menggunakan frame, ingatlah mencantumkan tag
<noframe></noframe> dan tuliskan rangkuman dari isi halaman web Anda pada tag tersebut
agar search engine yang tidak mendukung frame masih bisa membacanya.
Rancanglah agar web Anda bisa dibaca oleh semua browser. Halaman web yang tampak
cantik di Internet Explorer kadang-kadang hanya tampak blank pada Netscape Navigator.
Hati-hatilah dengan hal ini karena bisa menurunkan rangking pada search engine. Bukankah
kecantikan itu juga relatif bagi setiap orang :)
Gunakan keyword utama pada title halaman web. Isi dari tag <title></title> sangat
berpengaruh pada rangking search engine. Rancanglah sebuah title yang menarik untuk
dibaca dan jaga agar ukurannya tidak melebihi 70 karakter.
Usahakan agar halaman web Anda memakai page headline (H1-6), dan gunakan keyword
utama sebagai <H1>healine</H1>. Hindari pemakaian font yang terlalu kecil <font
size="1"> dan susah dibaca.
Jika Anda memasang image ingatlah agar selalu melengkapinya dengan atribut alt. Beberapa
search engine menggunakan alt tag sebagai pedoman relevansi hasil pencarian. <IMG
SRC="gambar.jpg" ALT="tambahkan beberapa keyword utama disini">.
Meskipun tidak banyak, beberapa search engine juga membaca comment tag. Isilah comment
tag Anda dengan beberapa keyword yang relevan.
Beberapa search engine utama seperti Altavista dan Google memberikan poin lebih banyak
untuk paragraf-paragraf yang letaknya di awal. Jadi seperti yang sudah disebutkan
sebelumnya, usahakan memakai keyword-keyword andalan Anda di awal halaman.
Doorway Page
Memang agak susah untuk mengoptimalkan halaman web sesuai dengan ketujuh tips
yang diberikan sebelumnya. Terutama dari segi content. Apalagi jika Anda membuat web
untuk sebuah perusahaan. Semua content (kalimat/paragraf) sudah diberikan apa adanya.
Anda tidak mungkin merubahnya dengan begitu saja. Begitu juga untuk web-web semacam
portal yang isinya beragam. Walaupun halam index-nya sudah Anda bolak-balik, tetap saja
susah mendapat posisi bagus untuk keyword tertentu. Jika menghadapi situasi seperti ini,
saatnya Anda menggunakan doorway page. Doorway page adalah sebuah halaman web yang
dibuat untuk menonjolkan satu sampai dua keyword saja. Satu atau dua keyword tersebut
akan menjadi inti pembicaraan dari sebuah halaman, sehingga search engine akan
menganggap isi halaman tersebut lebih relevan. Dari doorway page ini, bisa dipasang link
yang mengarah ke halaman index yang sebenarnya. Sebut saja Anda memiliki website
www.promosi-web.com, tetapi halaman indexnya sudah tidak bisa dioptimalkan lagi. Untuk
itu Anda harus membuat sebuah doorway page bernama promosi.html, karena "promosi"
adalah keyword yang Anda harapkan. Tapi perludiingatkan, pakailah doorway page hanya
jika terpaksa. Alangkah baiknya kalau Anda bisa mengoptimalkan halaman index yang asli.
Jika Anda sudah memutuskan untuk membuat doorway page, perhatikanlah langkah-langkah
berikut ini.
Putuskan untuk keyword apa doorway page tersebut akan dibuat. Pilih satu sampai tiga kata
yang Anda anggap paling potensial dan berhubungan dengan web Anda.
Optimalkan title, meta description, dan meta keyword-nya, sesuai dengan keyword utama
yang Anda pilih.
e t
Mulailah membuat content yang panjangnya minimal 3 paragraf. Jangan membuat halaman
a N
yang terlalu pendek, karena beberapa search engine seperti Altavista dan Northern Light akan
r
memprioritaskan halaman yang kaya akan content. Usahakan agar keyword-keyword yang
d
e n
Anda pilih dipakai pada setiap paragraf.
Jika menggunakan gambar, jagalah agar ukurannya tidak terlalu besar dan isi bagian alt-nya
dengan keyword yang Anda pilih. H
By
Simpan halaman web Anda dengan nama yang sebenarnya, contoh : promosi.html, jangan
disimpan dengan nama index1.htm atau index2.html.
Setelah semuaya sudah siap. selanjutnya sudah bisa mulai mendaftarkan website Anda ke
berbagai search engine utama.
Halaman web dinamis memang membuat tugas kita sebagai pengelola web menjadi
lebih mudah. Kita dapat mengupdate content setiap saat melalui sesi admin yang user friendly
tanpa harus membongkar kode-kode HTML. Semua itu memang sangat mengefisienkan
waktu dan tenaga. Tetapi ingat, tidak semua yang mudah itu baik. Spider dari search engine
lebih suka melahap halaman-halaman web yang bersifat statis ketimbang halaman dinamis
yang bisa berubah setiap saat.
Halaman dinamis biasanya ditandai dengan URL yang juga bersifat dinamis (ditandai dengan
adanya tanda tanya pada URL, seperti :
ttp://www.myweb.com/index.php?page=1). Dalam hal ini halaman dinamis bisa kelompokkan
menjadi dua macam, yaitu : content yang sama pada URL yang berbeda dan content yang
berbeda pada URL yang sama.
Spider bisa kebingungan pada saat menemui sebuah halaman web yang isinya sama, tapi
terdapat pada alamat URL yang berbeda-beda. Disini website kecil akan terlihat besar karena
banyaknya halaman, padahal isinya kebanyakan sama. Jika menemui kasus seperti ini, spider
dengan mudah akan mengabaikan website tersebut karena dikategorikan sebagai spamming.
Hal ini perlu dihindari.
Lain lagi pada kasus kedua yaitu content yang berbeda terdapat pada URL yang sama. Kasus
seperti ini biasanya terjadi pada halaman-halaman web yang diupdate pada jangka waktu
yang pendek, setiap jam atau bahkan setiap menit. Dalam hal ini search engine hanya
mengindex halaman tersebut sesuai dengan jadwal kedatangan spider, biasanya 3 minggu
hingga 3 bulan. Meskipun halaman tersebut diupdate keesokan harinya, listing di search
engine tetap tidak akan berubah, dan hanya akan berubah apabila spider sudah
mengunjunginya lagi.
Ada dua solusi yang dapat disarankan, agar sebagian besar halaman dinamis Anda bisa
terlisting, yaitu :
a N
d r
Bagaimanapun juga menggunakan halaman statis tetap lebih baik disamping juga lebih
meringankan beban kerja server. Tetapi jika Anda harus menggunakan halaman dinamis,
cobalah cara-cara tersebut.
e n
H
By
Daftar alamat dan layanan Search Engine
Mendaftar ke Search Engine ini ada gratis dan ada yang harus membayar. Search engine yang
tidak gratis akan lebih cepat dalam proses pengeluaran daftar dan lebih banyak jalur search
engine yang saling berhubungan.
rangkingnya
Excite http://www.excite.com Selain memakai index juga memakai
human-powered.
FAST Search http://www.alltheweb.com/ Salah satu dengan jumlah index
terbanyak yang dijalankan oleh Terra
Lycos.
Google http://www.google.com Pilihan terbaik dari layanan search
engine yang menawarkan banyak web
site dan pencarian images.
HotBot http://hotbot.lycos.com/ Pilihan favorit bagi peneliti.
IWon http://home.iwon.com/index_gen.html Didukung oleh Televisi Network CBS
dan selalu memberikan hadiah-hadiah
secara teratur.
Inktomi http://www.inktomi.com/ Aslinya Inktomi berada di UC
Berkeley kemudian penciptanya
membuka usaha sendiri dengan nama
yang sama dan mengisi index baru.
LookSmart http://www.looksmart.com/ Index untuk pencarian dilakukan
secara bertahap, bekerja sama dengan
MSN Search, Excite, dll.
Lycos http://www.lycos.com/sitemap.asp Lycos memulainya dengan pendataan
berdasarkan web yang masuk dan
masih membutuhkan data dari search
e t
engine lain, namun sekarang sudah
dapat berdiri sendiri.
MSN Search http://search.msn.com/
a N
Bekerja sama dengan LookSmart
Northern Light
By
http://www.northernlight.com/
Directory dan data Netscape. Hasil
kedua datang dari Google, dll.
Pilihan favorit lainnya bagi peneliti
yang menampilkan index yang
banyak, selain itu juga ditampilkan
beberapa dokumen yang tidak dapat
dibuka tanpa bayar.
Open Directory http://dmoz.org/
RealNames http://www.realnames.com Sistem yang digunakan lebih
sederhana dengan hanya
mencantumkan kata kunci yang
sederhana. Merupakan search engine
yang berhasil.
Yahoo http://www.yahoo.com/ Yang paling pupolar yang memiliki
reputasi baik dalam membantu dalam
pencarian informasi dengan mudah.
Lampiran
Tutorial META Tag
META Tag adalah tag-tag HTML yang memberikan informasi keterangan isi
dari suatu halaman web yang akan ditampilkan oleh pengunjung. Search engine
mengenalinya dan digunakan oleh pemilik situs web dan administrator untuk
menentukan positioning dan keterangan pada hasil pencarian search engine. Banyak
search engine dewasa ini bekerja dengan membaca META Tag sebagai bagian dari
formula index.
Meta tag ditempatkan pada lemen <HEAD> </HEAD> dari file HTML.
Tag Abstract mendefinisikan suatu abstraksi ringkas dari situs web anda
META Tag Abstract sangat menyerupai tag META description, perbedaannya adalah
sebagai suatu abstraksi atau suatu ringkasan pendek dari META tag description.
e t
Pada umumnya META Tag Abstract berupa satu baris kalimat yang memberikan
a N
gambaran seluruh halaman. Walaupun search engine jarang menggunakan tag ini,
d r
n
tetapi merupakan pelengkap yang berguna bagi search engine yang hanya
e
H
membaca sejumlah baris pertama dari halaman web anda.
By
Penulisan META Tag Abstract
Walaupun tidak banyak search engine yang secara khusus mencari META tag
Abstract, tetapi hal tersebut menambahkan suatu generalisasi pada halaman anda di
bagian header yang sering dibaca oleh search engine pada saat menemukan suatu
halaman web.
META Tag Author mendefinisikan nama dari pembuat dokumen yang sedang dibaca.
Tag ini tidak didukung secara luas tetapi dikenali sebagai bagian dari META Tag
standar. Format data yang didukung meliputi nama, alamat email dari webmaster,
nama perusahaan atau alamat internet (URL). Format yang paling umum adalah
menyisip nama dari orang atau organisasi dan alamat kontak email. Sebagai contoh :
Webmaster (webmaster@submitcorner.com)
Walaupun tidak banyak search engine yang secara khusus mencari META Tag
Author, hal tersebut secara jelas mendefinsikan siapa pembuat dan/atau
bertanggung jawab mengupdate halaman web tersebut.
e t
META Tag Copyright a N
d r
e n
Tag Copyright mendefinisikan informasi tentang hak cipta dokumen tersebut
H
By
META Tag copyright mendefinisikan pernyataan hak cipta yang ingin anda nyatakan
pada dokumen halaman web anda. Anda dapat menyertakan nama merek dagang,
nomor patent, hak cipta atau informasi lain yang ingin anda publikasi sebagai hak
cipta intelektual. META Tag Copyright adalah suatu pernyataan hak cipta dalam
bentuk bebas.
Walaupun tidak banyak search engine yang secara khusus mencari META Tag
Copyright, hal tersebut secara jelas menunjukkan peryataan dari pemilik atau
pengaturan lisensi secara langsung pada bagian header halaman web anda. Pada
umumnya, search engine tidak membaca dan/atau menyimpan informasi ini.
Tag Description adalah suatu keterangan umum apa yang terkandung dalam
halaman web anda
Search engine yang mendukung META tag sering menampilkan META tag
description besamaan dengan title halaman anda pada hasil pencariannya. Search
engine sering mengambil seluruh META tag dari field description anda, tetapi
sesuatu yang senantiasa perlu diingat oleh para webmaster adalah keterbatasan
tempat tampilan search engine, biasanya kurang dari 20 kata yang mana dapat anda
gunakan untuk menarik perhatian pemakai, karena alasan ini biasanya ketika
membuat META tag ini, webmaster harus membuat kalimat pertama dari field
description mereka untuk menarik perhatian dari pemakai, dan sisanya untuk
keterangan lebih lanjut.
e t
Pemakaian META Tag Description
a N
d r
META Name: "Description"
e n
General Usage:
H
<META name="Description" content="Your description">
By
Pemakaian oleh Search Engines
META Tag Description dan Keyword adalah dua META tag utama yang dicari oleh
search engine ketika mengindeks halaman web anda. Keterangan dan kata kunci
adalah kata-kata yang ingin anda tampilkan pada hasil search engine, jadi pastikan
bahwa anda memberikan tulisan yang sangat berarti pada kalimat yang ingin anda
gunakan untuk menerangkan seluruh halaman situs web anda.
META Tag distribution mendefinisikan level atau tingkat dari distribusi dari halaman
web anda dan bagaimana klasifikasinya dalam hubungan dengan metode distribusi
pada world wide web. Sampai sekarang hanya ada tiga bentuk distribusi yang
didukung oleh tag distribution : Global (menunjukkan bahwa halaman web anda
ditujukan untuk distribusi massa pada setiap orang), Local (ditujukan untuk distribusi
lokal dari dokumen anda), dan IU - Internal Use (tidak ditujukan untuk distribusi
umum).
META Tag Distribution jarang digunakan karena bisanya pembuat halaman web
mendistribusikan halaman mereka kepada setiap orang dengan suatu distribusi
global. Hampir semua webmaster mengabaikan tag ini kecuali anda ingin membatasi
jumlah pembaca, dalam banyak ini pemakaian META tag Robots adalah ide yang
lebih baik.
e t
a N
Expires META Tag
d r
e n
H
Tag Expires mendeklasikan kepada search engine kapan isi dari situs web anda
akan kadaluarsa
By
META Tag Expires mendefinisikan tanggal dan waktu kadaluarsa dari dokumen yang
diindex. Jika situs web anda hanya digunakan untuk suatu waktu terbatas atau
setelah tanggal tertentu dokumen menjadi tidak sah lagi, anda harus
mengikutsertakan tag Expires untuk memberitahukan kepada search engine kapan
menghapus halaman anda dari database mereka.
Tag expires umumnya digunakan bersamaan dengan Tag Revisit yang berarti
membuat search engine mengunjungi kembali setiap beberapa hari. Hal ini
umumnya digunakan oleh situs web yang mengupdate isi mereka secara berkala
dan ingin search engine memperoleh suatu copy yang terbaru dari ini mereka.
META Tag Expire pada prinsipnya digunakan sebagai arti memberitahukan kepada
search engine suatu tanggal tertentu ketika mereka harus menghapus halaman anda
dari database mereka. Jika halaman anda kadaluarsa pada suatu tanggal tertentu,
adalah disarankan untuk menentukan tag ini dengan satu atau dua hari sebelum
waktu kadaluarsa sehingga search engine memiliki waktu untuk menghapusnya,
sehingga pengunjung tidak mendapatkan informasi yang sudah kadaluarsa.
Tag Keyword adalah suatu urutan dari kata kunci yang mewakili isi dari situs anda
Search engine yang mendukung META tag sering menggunakan kata kunci yang
ditemukan dalam halaman anda untuk melakukan kategori situs web anda
berdasarkan pada algoritma indexing pada search engine. Pastikan anda memiliki
e t
kata kunci yang sesuai untuk situs anda dan hindari perulangan yang mana akan
menyebabkan search engine menurunkan
a N
rangking anda sebagai usaha
d r
mengacaukan sistem mereka. Sama dengan META Tag Description, search engine
e n
memberikan prioritas pada sejumlah kata pertama pada keterangan anda, jadi
H
By
fokuskan pada kata kunci utama anda dan yang selanjutnya merupakan sinonim
atau kata lain yang berhubungan.
META Tag Keyword dan Description adalah dua META tag prinsipil yang dicari oleh
search engine ketika mengindex situs web anda, keterangan dan kata kunci yang
anda tentukan adalah sama dengan kata-kata yang akan ditampilkan pada hasil, jadi
pastikan anda menempatkan kata-kata yang berarti yang menerangkan situs web
anda.
Tag Language mendefinisikan bahasa yang digunakan pada halaman web anda
HTTP-EQUIV: "Content-Language"
Supported All RFC1766 compliant languages. A small excerpt of available languages
Languages: is found below:
BG
CS e t (Bulgarian)
(Czech)
DA
a N (Danish)
DE
d r (German)
EL
EN e n (Greek)
(English)
EN-GB H (English-Great Britain)
ES By
EN-US
ES-ES
(English-United States)
(Spanish)
(Spanish-Spain)
FI (Finnish)
HR (Croatian)
IT (Italian)
FR (French)
FR-CA (French-Quebec)
FR-FR (French-France)
IT (Italian)
JA (Japanese)
KO (Korean)
NL (Dutch)
NO (Norwegian)
PL (Polish)
RU (Russian)
SV (Swedish)
ZH (Chinese)
General Usage: <META HTTP-EQUIV="Content-Language" content="EN">
META Tag Language tidak terlalu sering digunakan oleh search engine walaupun
halaman web anda bukan berbahasa english atau lebih dari satu bahasa, anda
mungkin ingin menggunakan META Tag ini untuk memberitahukan kepada search
engine bahwa situs anda adalah multi-lingual dan memberitahukan bahasa yang
didukung
Tag Revisit mendefinisikan berapa hari search engine harus mengunjungi kembali
halaman anda
META Tag Revisit mendefinisikan berapa sering suatu search engine atau spider
mengunjungi situs web anda untuk melakukan indexing ulang. Sering kali tag ini
digunakan oleh situs web yang mengubah isi halaman situs mereka dengan suatu
basis tertentu. Tag ini dapat juga digunakan untuk menaikan rangking halaman anda
jika search engine menampilkan hasil berdasarkan pengiriman yang terakhir.
Tag Robots mendeklarasikan kepada search engines apa isi yang akan diindex dan
dijaring
Robots, juga dikenal sebagai suatu spider, adalah mekanisme yang secara otomatis
menjaring situs anda, atau mencari halaman anda untuk melakukan kategori
informasi yang anda kirim ke search engine. Persisnya, seorang pemilik situs web
harus mengirim halaman utama dan robot akan mengunjungi situs anda dan
menggumpulkan semua halaman sub dan link yang berkaitan dengan halaman
utama. Bagaimanapun, tag ini memungkinkan anda mengendalikan halaman mana
saja yang akan di jaring, dan mana saja yang akan diabaikan. Sebagai contoh,
beberapa halaman web dan direktori (seperti: Script CGI) yang tidak anda ingin index
dalam search engine. Gunakan tag robots, anda dapat mendefinisikan halaman yang
diikuti, mana yang diindex dan mana yang diabaikan.
META Tag Robots digunakan oleh search engine sebagai suatu arti untuk menentukan tingkat
dari penjaringan yang harus dilakukan oleh suatu search engine. Kebanyakan search engine
mencari META tag ini dan hanya mengindex halaman yang ingin anda index
e t
a N
d r
e n
H
By