Javascript - Tipe Data
Memahami berbagai tipe data yang ada dalam JavaScript.
Bahasa pemrograman memproses data dengan berbagai tipe.
Tipe Data Primitif
- String - Teks (contoh:
"Hello",'123') - Number - Angka (contoh:
42,3.14,-5) - Boolean - Nilai kebenaran (
trueataufalse) - Undefined - Variabel yang dideklarasikan tanpa nilai
- Null - Nilai kosong yang disengaja
- BigInt - Untuk bilangan bulat besar (contoh:
123n) - Symbol - Nilai unik yang tidak dapat diubah (ES6+)
Tipe Data Non-Primitif
- Object - Kumpulan properti (key-value pairs)
- Array - Koleksi nilai yang terindeks
- Function - Blok kode yang dapat dipanggil
- Date - Untuk menangani tanggal dan waktu
- RegExp - Untuk pencocokan pola teks
Contoh Penggunaan
// String
let nama = "Budi";
let alamat = 'Jakarta';
let sambutan = `Halo, ${nama}!`; // Template literal
// Number
let umur = 25;
let harga = 99.99;
let hex = 0xFF; // 255 dalam desimal
// Boolean
let sudahLogin = true;
let isAdmin = false;
// Null & Undefined
let alamat = null; // Nilai kosong yang disengaja
let noTelp; // undefined
let umur = undefined; // Tidak disarankan
// Object
let user = {
nama: "Budi",
umur: 25,
aktif: true
};
// Array
let angka = [1, 2, 3, 4, 5];
let warna = ["merah", "hijau", "biru"];
// Function
function sapa(nama) {
return `Halo, ${nama}!`;
}Type Coercion
JavaScript secara otomatis mengkonversi tipe data saat diperlukan:
let x = "5" + 2; // "52" (string)
let y = "5" - 2; // 3 (number)
let z = "5" * "2"; // 10 (number)
let a = "5" * "halo"; // NaN (Not a Number)Pengecekan Tipe Data
typeof "Budi" // "string"
typeof 25 // "number"
typeof true // "boolean"
typeof undefined // "undefined"
typeof null // "object" (ini adalah bug dalam JavaScript)
typeof [1,2,3] // "object"
typeof {nama: "Budi"} // "object"
typeof function(){} // "function"
// Cara lebih baik untuk mengecek array
Array.isArray([1,2,3]) // trueBest Practices
- Gunakan
===untuk perbandingan ketat (strict equality) - Hindari
==yang melakukan type coercion - Selalu inisialisasi variabel dengan nilai default
- Gunakan
constuntuk nilai yang tidak berubah - Validasi input untuk memastikan tipe data yang diharapkan