Monday, June 11, 2012

=== (Strict Equality)

Operator === (Strict Equality) digunakan untuk membandingkan operand A dengan operand B, perbandingan akan mengembalikan true jika operand A dan operand B benar-benar sama nilainya dan tipe datanya, selain itu false dikembalikan.

Sintaks:

A === B

Operator === adalah operator standard JavaScript 1.3+, JScript 1.0+, ECMAScript 1.0+ dan di dukung Google Chrome Beta+, Firefox 1.0 (Gecko 1.7)+, Internet Explorer 3+, Netscape Navigator 4.0+, Opera 6.0+, Safari 1.0+.

Operator === mempunyai cara kerja yang sama seperti operator == (Equality), perbedaannya hanya dipenanganan tipe datanya saja, di == untuk tipe data dari kedua operand yang dibandingkan tidak ketat.

Contoh maksud dari ketat dan tidaknya penanganan tipe data dari kedua operand yang akan dibandingkan menggunakan operator === dan operator == adalah seperti misalkan anda mempunyai dua variabel sebagai berikut:

var A = 5; var B = "5";

Selanjutnya anda mencoba membandingkan kedua variabel tersebut masing-masing menggunakan operator === dan operator ==, seperti berikut:

alert(A === B); alert(A == B);

Seperti diketahui variabel A adalah number dan B adalah string (dalam kasus ini angka-angka yang terlampir didalam tanda kutip), ketika kedua variabel tersebut dikembalikan hasilnya menggunakan operator === dan operator ==, masing-masing mengembalikan nilai false dan true.

Jadi kesimpulannya, untuk operator == mau string ataupun number asalkan memiliki nilai yang sama akan mengembalikan true, tapi tidak untuk operator ===.

Jika mencoba membandingkan null dengan undefined, hasil yang dikembalikan adalah false. Jika mencoba membandingkan true dengan 1, hasil yang dikembalikan adalah false. Jika mencoba membandingkan false dengan 0, hasil yang dikembalikan adalah false.

Contoh di bawah ini pengguna harus memasukkan inputan, jika inputan pengguna adalah "7", pengguna dihadirkan kotak dialog Alert yang memberitahukan inputannya adalah benar, selain itu pengguna dihadirkan kotak dialog Alert yang memberitahukan inputannya adalah salah:

var A = prompt("Input 1-7: ", ""); var B = "7"; if (A === B) { alert("Input anda benar!"); }else{ alert("Input anda salah!"); }