Ada beberapa cara penempatan kode JavaScript didalam halaman HTML.
Scripts yang ditempatkan pada bagian bodyakan dieksekusi sementara halaman diload. Scripts yang ditempatkan pada bagian headakan dieksekusi jika dipanggil.
Contoh Bagian Head
Script berupa fungsi (message) ditempatkan di bagian head, kemudian fungsi dipanggil dipanggil (eksekusi) pada bagian body.
Bagian Body
Scipt dikesekusi begitu halaman di load
<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> <head> </head> <body> <script type="text/javascript"> document.write("This message is written when the page loads") </script>
</body> </html>
</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:
<!-- Menyembunyikan script terhadap browser non-JavaScript // akhir dari penyembunyian -->
Catatan
Ingat, selalu mengetik JavaScript diantara baris komentar sehingga browser non Java dapat mengabaikannya.
3. Variabel dan Literal
JavaScript memiliki beberapa tipe dari nilai sebagai berikut :
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.
Table 1. Cadangan kata pada JavaScript.
abstract extends 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
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 =
temperature = "The temperature is" temperature = "The temperature is " +
Karena JavaScript sangat longgar tentang tipe, sehingga menyediakan beberapa fungsi untuk melakukan manipulasi data string dan nilai numerik.
Jangkauan dari Variabel
JavaScript memiliki dua jangkauan untuk variabel: 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 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 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:
"a double quoted literal" 'a single quoted literal'
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.
Table 2. Karakter khusus JavaScript.
Keterangan Spesial Karakter
Backspace \b
Form feed \f
Newline \n
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.
4. Ekspresi dan Operator
Literal dan variabel dihubungkan oleh operator, hasil dari pernyataan tersebut adalah ekspresi. JavaScript menyediakan berbagai operator yang memungkinkan programmer menulis sejumlah ekspresi dari yang paling sederhana sampai yang paling sulit.
Operator JavaScript dapat dibagi menjadi beberapa kategori berikut: Assignment operator Arithmetic operator Bitwise operator Logical operator Comparison operator String operator
JavaScript memiliki operator binari maupun unari. Suatu operator binari memiliki format. operand1 operator operand2
Sebagai contoh , 9 * 7atau temp = 24adalah ekspresi dengan operator binari. Operator unari memiliki dua format:
operand operator atau
operator operand
Sebagai contoh ekspresi mengunakan operator unari adalah ++yatau 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.
Table 3. Daftar Operator assignment
Shorthand operator Artinya Contoh
x += y x = x + Y x += x -= y x = x - y x -= x *= y x = x * y x *= x /= y x = x / y x /= x %= y x = x % y x %= x <<= y x = x << y x <<=
By HendraNet
x >>= y x = x >> y x >>=
x >>>= y x = x >>> y x >>>=
x &= y x = x & y x &= 0xC0
x |= y x = x | y x |= 0x0F
x ^= y x = x ^ y x ^= 0XFF
Catatan
Bagi yang tidak familiar dengan pemrograman C, hati-hati dengan perbedaan antara assignment operator (=) dan comparison operator (==)
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 operand1terhadap operand2. Sebagai contoh, hasil dari 27 % 6adalah 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 (++xatau --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, -xmengubah 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 & 0x0amengembalikan 0x0a.
Bitwise OR (|), akan mengembalikan nilai dari logika OR antara setiap pasangan dari bit. Sebagai contoh, 0x05 | 0x0amengembalikan 0x0f.
Bitwise XOR (^), akan mengembalikan nilai dari logika exclusive OR between antara tiap pasangan bit. Sebagai contoh, 0x0f ^ 0x0amengembalikan 0x05.
JavaScript juga menyediakan satu set bitwise untuk operasi shift operand1terhadap 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 << 2mengembalikan 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 >> 2mengembalikan 2dan -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 :
Logical AND (&&) Logical OR (||) Logical NOT (!)
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.
(condition) ? true_value : false_value
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 :
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.
Table 4. Prioritas urutan operasi dari prioritas rendah sampai 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 () []
5. Struktur Kendali dan Fungsi
Untuk membuat suatu halaman yang dinamis dan interaktif, perancang halaman Web membutuhkan perintah- 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
JavaScript mendukung dua struktur loop; perintah fordan perintah while. Untuk control pada struktur loop, JavaScript menyediakan perintah breakdan continue.
Perintah for
Perintah forpada JavaScript sama dengan yang ada di Java dan C. Perintah formengulang suatu loop sampai kondisi menghasilkan evaluasi true atau loop keluar dengan perintah break . Syntax untuk perintah for adalah sebagai berikut :
for ([initial-expression;] [condition;] [increment-expression]) {
statements }
Urutan proses untuk perintah foradalah sebagai berikut:
1. Interpreter menjalankan initial-expression. Ekspresi ini mementukan nilai yang diperlukan untuk kendali perulangan.
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 breakatau continue, kendali kembali ke langkah 2.
Contoh :
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript"> <!-- menyembunyikan script for (i=1; i<=10; i++) { sq=i*i
document.write("number: " + i + " square: " + sq + "<BR>")
}
// akhor dari penyembunyiang --> </SCRIPT> </HEAD> <BODY> </BODY> </HTML> 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 whileterus mengulangi loop selama kondisi memiliki nilai true. Syntax untuk perintah whileadalah sebagai berikut :
while (condition) { statements
}
Test kondisi terjadi pada perulangan whileyang 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 whileloop.
Contoh:
<HTML> <HEAD><SCRIPT LANGUAGE="JavaScript"> <!-- menyembunyikan script i=1 while (i<=10) { sq=i*i document.write("number: " + i + "square: " + sq + "<BR>") i++ }
// end script hiding --> </SCRIPT> </HEAD> <BODY> </BODY> </HTML> 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 break
Perintah breakmenghentikan foratau whileloop 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
By HendraNet
Seperti perintah break, perintah continue menghentikan interasi tersebut untuk suatu for atau while loop; Tetapi tidak keluar dari loop; Tetapi melakukan interasi berikutnya.
Pada suatu whileloop, kendali dilewatkan ke condition. Pada suatu forloop, dilewatkan ke increment-expression. Berikut ini memperlihatkan bagaimana menggunakan perintah continue:
i=0 while (i<10) { if (i==3) continue i++ } Perintah function
Suatu functionadalah 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
functionadalah sebagai berikut:
function FunctionName(argument list) { statements } Contoh: <HTML> <HEAD> <SCRIPT LANGUAGE="JavaScript" <!-- hide the script
function DisplayIt(LineToDisplay) { document.write(LineToDisplay + "<BR>") } // end hiding --> </SCRIPT> </HEAD> <BODY> <SCRIPT LANGUAGE="JavaScript" <!-- hide it
By HendraNet
LineToDisplay("Hello World") // end hiding --> </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 HEADdari 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.lengthmengandung 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"> <!-- menyembunyikan UnorderList="UL"
function DisplayList(ListType) { // menampilkan variabel list
if (ListType="OL" || ListType="UL") { // validasi jenis list
document.write("<" + ListType + ">" // menampilkan jenis list
for (var i=1; i<DisplayList.arguments.length; i++) document.write("LI" + DisplayList.arguments[i]) document.write("</" + ListType + ">") // End list return true
}
else return false }
// akhir dari penyembunyian -->
</SCRIPT> </HEAD> <BODY>
<SCRIPT LANGUAGE="JavaScript" <!-- menyembunyikan
if (DisplayList(UnorderList, "Bullet 1 text", "Bullet 2 text"))
document.write("<P>List Display</P>") else
document.write("<P>Invalid List Type<p>") // 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: function RetExam(a, b) { var x=0 x = a+b return x } TestResult=RetExam(5, 7) 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 */
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
if (a=b) c=1 // also a valid 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.
6. Dasar dari Objek
JavaScript adalah suatu bahasa berdasarkan pada objek dan bukan merupakan bahasa object-oriented programming (OOP). Perancang JavaScript tidak bertujuan membuat suatu bahasa OOP yang baru; tetapi bertujuan membuat suatu bahasa script untuk mengintegrasikan objek yang telah dibuat dengan suatu bahasa OOP kedalam dokumen HTML. Selanjutnya Javascript tidak memiliki encapsulation , inheritance, dan abstraction seperti pada C++atau Java.
Tetapi class pada JavaScript menyediakan properti dan metode untuk membuat objek. Objek dan Properti
Berikut ini adalah notasi yang digunakan oleh JavaScript untuk menggambarkan suatu objek dan propertinya: ObjekName.PropertyName
Sebagai contoh, objek mydog memiliki properti sebagai berikut : mydog.breed="small mut"
mydog.age=5 mydog.weight=25
Objek juga dapat menggunakan acuan array dengan menggunakan nama propertinya sebagai index:
mydog["breed"]="small mut" mydog["age"]=5
mydog["weight"]=25
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
Kemudian metode tersebut berkerja dengan suatu objek:
ObjekName.MetodeName(parameters);
Bekerja dengan Objek
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...inmenyediakan suatu mekanisme perulangan untuk iterasi melalui semua properti dari suatu objek. Dengan format adalah sebagai berikut :
for (variable in Objekname) { statements
}
Contoh berikut mengunakan perintah ini untuk menampilkan semua properti dalam suatu objek dan nilai asosiasinya:
function ListProperti(obj, obj_name) { var result = ""
for (var i in obj) {
result += obj_name + "." + i " = " + obj[i] + "<BR>" }
return result
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