Home, Forum diskusi, Chatting, Download


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...in menyediakan 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 objek default yang berada dalam kurung. Tata cara penulisannya adalah sebagai berikut:

with (ObjekName) {

   statements

i

Objek math berikut merupakan contoh pemakaian dari perintah with:

var r =

var x =

with (Math) {

   r = p / (1 - cos(a))

   x = (2 * p * cos(a)) / (sin(a) * sin(a))

}

Operand new

Untuk suatu  tipe objek user-defined, operand new berfungsi membuat suatu instance baru dari objek. Tata cara penulisannya adalah sebagai berikut:

ObjekName = new ObjekType(param1 [, param2,]  [, paramN])

Kata kunci this

this mengacu pada objek yang sekarang. Pada bagian selanjutnya akan ditunjukkan bagaimana pemakaian kata kunci ini dalam penulisan function dan metode.

Membuat Objek baru

Walaupun JavaScript memiliki sejumlah besar  objek yang telah didefinisikan, developer dapat membuat  objeknya sendiri. Untuk membuat suatu objek baru diperlukan dua langkah yaitu:

  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:

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:

mydog = new dog("small mut", 5, 25);

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.

function doglicense(owner, phone_number) {

   this.owner = owner;

   this.phone_number = phone.number;

}



AZ123 = new doglicense("John Smith", "999-9999");

Jenis Objek dog perlu dimodifikasi untuk mengikutsertakan informasi baru tersebut:

function dog(breed, age, weight, license) {

   this.breed = breed;

   this.age = age;

   this.weight = weight;

   this.license = license;

}



mydog = new dog("mixed mut", 5, 25, AZ123);

Untuk mengacu pada pemilik mydog, syntax berikut diperlukan

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;

   for (var i = 1; i <= n; i++)

      this[i] = 0;

   return this

}

Langkah berikutnya adalah mendefinisikan suatu instance untuk membentuk objek MakeArray :

ExmpArray = new MakeArray(20);

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"

ExmpArrya[2] = "another test"

Dibuat  oleh hendra@indoprog.com
Medan - Sumatera Utara
Indonesia

1