JavaScript - typeof Operator

Selamat datang, para pemula pemrograman! Hari ini, kita akan memulai perjalanan menarik ke dunia JavaScript, khususnya mengenal operator typeof. Jangan khawatir jika Anda baru dalam pemrograman; saya akan mengarahkan Anda melalui konsep ini secara langkah demi langkah, sama seperti yang telah saya lakukan untuk ribuan siswa selama tahun-tahun ini. Jadi, ambil minuman favorit Anda, duduk nyaman, dan mari kita masuk ke dalam!

JavaScript - typeof Operator

The typeof Operator

Bayangkan Anda adalah seorang detektif di dunia JavaScript, dan tugas Anda adalah mengidentifikasi jenis data yang berbeda. Itu tepat apa yang dilakukan operator typeof! Itu seperti sebuah kaca pembesar yang membantu kita menentukan jenis suatu nilai atau ekspresi dalam JavaScript.

Syntax

Menggunakan operator typeof adalah sama mudahnya makan pai (dan siapa yang tidak menyukai pai?). Berikut cara Anda melakukannya:

typeof operand
// atau
typeof(operand)

Kedua bentuk ini bekerja sama-sama, jadi pilihlah yang terlihat lebih indah bagi Anda. Saya secara pribadi lebih suka yang pertama karena lebih sedikit untuk ditulis, dan mari kita mengakui, para pemrogram adalah tentang efisiensi!

Datatypes Returned by typeof Operator

Sekarang, mari kita lihat jenis yang berbeda yang typeof dapat mengidentifikasi. Itu seperti menu rasa data dalam JavaScript:

Tipe Data typeof Mengembalikan
Number "number"
String "string"
Boolean "boolean"
Symbol "symbol"
Undefined "undefined"
Null "object"
Object "object"
Function "function"
BigInt "bigint"

Jangan khawatir jika beberapa di antaranya tampak asing. Kita akan menjelajahi masing-masing dengan contoh yang membuat Anda berkata "Aha!"

JavaScript typeof Operator to Check Number Type

Mari kita mulai dengan angka. Dalam JavaScript, angka adalah seperti blok bangunan operasi matematika.

console.log(typeof 42);        // "number"
console.log(typeof 3.14);      // "number"
console.log(typeof -10);       // "number"
console.log(typeof Infinity);  // "number"
console.log(typeof NaN);       // "number"

Kaget! Bahkan Infinity dan NaN (Not-a-Number) dianggap sebagai angka dalam JavaScript. Itu seperti menyebut hot dog sebagai sandwich – sedikit tak terduga, tapi itu cara JavaScript berjalan!

JavaScript typeof Operator to Check String Type

String seperti wrapper untuk data – mereka memegang konten teks.

console.log(typeof "Hello, World!");  // "string"
console.log(typeof '42');             // "string"
console.log(typeof ``);               // "string"

Perhatikan bagaimana '42' dalam tanda kutip adalah string, bukan angka. Itu seperti mencantumkan angka dalam kostum teks!

JavaScript typeof Operator to Check Boolean Type

Boolean adalah ya/tidak, benar/salah dari pemrograman. Mereka seperti saklar cahaya – baik on maupun off.

console.log(typeof true);   // "boolean"
console.log(typeof false);  // "boolean"
console.log(typeof (1 > 2)); // "boolean"

Contoh terakhir menunjukkan bahwa perbandingan menghasilkan boolean. Itu seperti bertanya, "Apakah 1 lebih besar dari 2?" dan mendapat jawaban langsung "Tidak!" (false) kembali.

JavaScript typeof Operator to Check Symbol Type

Simbol adalah identifikasi unik, seperti name tag di pesta di mana setiap orang memiliki nama yang berbeda.

console.log(typeof Symbol('unique'));  // "symbol"

Jangan khawatir terlalu banyak tentang simbol untuk saat ini. Mereka adalah anak cool ES6, tapi kita tidak melihat mereka di setiap pesta JavaScript.

JavaScript typeof Operator to Check Undefined and Null

Disini hal-hal menjadi sedikit sulit, seperti trick magik di dunia pemrograman.

console.log(typeof undefined);  // "undefined"
console.log(typeof null);       // "object"

Tunggu, apa? null adalah objek? Ini adalah bug lama di JavaScript, tapi sudah berada begitu lama sehingga memperbaikinya mungkin akan merusak kode yang ada. Itu seperti meja yang wobble di kafe favorit Anda – merusak, tapi mengubahnya mungkin akan merusak pelanggan biasa.

JavaScript typeof Operator to Check Object Type

Objek seperti wadah yang dapat menahan berbagai properti dan metode.

console.log(typeof {});           // "object"
console.log(typeof []);           // "object"
console.log(typeof new Date());   // "object"

Ya, array juga adalah objek! Itu seperti mengatakan bahwa daftar belanja adalah jenis dokumen – teknis benar, meskipun rasanya agak aneh.

JavaScript typeof Operator to Check Function Type

Fungsi seperti kata kerja pemrograman – mereka melakukan hal-hal!

console.log(typeof function() {});  // "function"
console.log(typeof console.log);    // "function"

Fungsi mendapat jenis khusus mereka. Itu seperti JavaScript mengatakan, "Anda istimewa, fungsi. Anda mendapat kategori sendiri!"

JavaScript typeof Operator to Check BigInt Type

BigInt adalah anak baru di lingkungan, diperkenalkan untuk menangani angka yang sangat besar.

console.log(typeof 1n);  // "bigint"
console.log(typeof BigInt(1));  // "bigint"

Pikirkan BigInt seperti juara berat kelas angka – ketika angka biasa tidak cukup besar!

JavaScript typeof Operator in Real-Time Development

Dalam pemrograman dunia nyata, typeof sering digunakan untuk pemeriksaan jenis sebelum operasi. Itu seperti memeriksa jika Anda memiliki bahan yang benar sebelum mulai memasak.

function safeAdd(a, b) {
if (typeof a === "number" && typeof b === "number") {
return a + b;
} else {
return "Error: Both arguments must be numbers";
}
}

console.log(safeAdd(5, 10));  // 15
console.log(safeAdd("5", 10));  // "Error: Both arguments must be numbers"

Fungsi ini memeriksa jika kedua input adalah angka sebelum menambahkannya. Itu seperti seorang bouncer di klub "Numbers Only"!

JavaScript Arrays and typeof Operator

Disini ada momen "gotcha" – ingat bahwa array adalah objek? Mari kita lihatnya dalam aksi:

console.log(typeof [1, 2, 3]);  // "object"

Bagaimana kita memeriksa array? Kita menggunakan metode khusus:

console.log(Array.isArray([1, 2, 3]));  // true
console.log(Array.isArray({a: 1}));     // false

Itu seperti memiliki detector khusus untuk objek berbentuk array!

Dan itu adalah dia, teman-teman! Kita telah menjelajahi tanah typeof di JavaScript. Ingat, latihan membuat sempurna, jadi mainkanlah dengan contoh ini. Sebelum Anda tahu, Anda akan menjadi ahli type-checking! Semangat pemrograman, dan may your variables always be of the type you expect them to be!

Credits: Image by storyset