Variables & Data Types dalam JavaScript

| JavaScript | javascript, tutorial, variables

Variables & Data Types dalam JavaScript

Variabel adalah wadah untuk menyimpan data. Dalam JavaScript, Anda perlu tahu cara membuat variabel dan tipe data apa saja yang tersedia.


1. Membuat Variabel

JavaScript punya tiga cara membuat variabel:

var (Legacy)

var nama = "Andika";
var umur = 25;

var adalah cara lama. Sudah tidak direkomendasikan karena punya masalah scope.

let (ES6)

let nama = "Andika";
let umur = 25;

let adalah cara modern untuk variabel yang bisa diubah.

const (ES6)

const PI = 3.14159;
const nama = "Andika";

const untuk variabel yang tidak bisa diubah setelah dideklarasikan.


2. Perbedaan var, let, const

Aspek var let const
Scope Function Block Block
Re-declare Boleh Tidak Tidak
Re-assign Boleh Boleh Tidak
Hoisting Ya Ya (TDZ) Ya (TDZ)

Contoh

// var - bisa diubah dan dideclare ulang
var x = 10;
var x = 20; // OK
x = 30;     // OK

// let - bisa diubah, tidak bisa declare ulang
let y = 10;
// let y = 20; // Error!
y = 30;      // OK

// const - tidak bisa diubah
const z = 10;
// z = 20;    // Error!

3. Tipe Data

Primitive Types

// String - teks
let nama = "Andika";
let pesan = 'Halo';
let template = `Nama saya ${nama}`;

// Number - angka
let umur = 25;
let harga = 99.99;
let negatif = -10;

// Boolean - true/false
let aktif = true;
let nonaktif = false;

// Null - nilai kosong (sengaja)
let kosong = null;

// Undefined - belum didefinisikan
let belumAda;
console.log(belumAda); // undefined

// Symbol - identifier unik
let id = Symbol('id');

// BigInt - angka besar
let besar = 9007199254740991n;

4. Mengenal Tipe Data

typeof Operator

console.log(typeof "Andika");    // string
console.log(typeof 25);          // number
console.log(typeof true);        // boolean
console.log(typeof null);        // object (bug di JS!)
console.log(typeof undefined);   // undefined
console.log(typeof Symbol('x')); // symbol

5. Template Literals

Cara modern untuk membuat string dengan expression:

let nama = "Andika";
let umur = 25;

// String concatenation (lama)
let sapa1 = "Halo, " + nama + "! Umur Anda " + umur + " tahun.";

// Template literal (baru)
let sapa2 = `Halo, ${nama}! Umur Anda ${umur} tahun.`;

// Multi-line
let alamat = `
    Jl. Merdeka No. 123
    Batam, Kepulauan Riau
    Indonesia
`;

6. Type Conversion

String to Number

let angka = Number("123");      // 123
let desimal = parseFloat("3.14"); // 3.14
let integer = parseInt("42");    // 42

Number to String

let teks = String(123);         // "123"
let teks2 = (123).toString();   // "123"

Boolean Conversion

Boolean(0);     // false
Boolean("");    // false
Boolean(null);  // false
Boolean("hi");  // true
Boolean(42);    // true

7. Naming Rules

// ✅ Bener
let nama = "Andika";
let _private = true;
let $element = document.body;
let namaLengkap = "Andika Rekatias";
let MAX_SIZE = 100;

// ❌ Salah
let 1name = "Error";    // Tidak boleh mulai angka
let my-name = "Error";  // Tidak boleh pakai hyphen
let my name = "Error";  // Tidak boleh ada spasi

Convention

  • camelCase untuk variabel dan fungsi: namaLengkap, hitungTotal
  • UPPER_CASE untuk konstanta: MAX_SIZE, API_URL
  • snake_case (opsional): nama_lengkap

8. Contoh Lengkap

// Variabel
const nama = "Andika";
let umur = 25;
let aktif = true;

// Template literal
let profil = `
Nama: ${nama}
Umur: ${umur} tahun
Status: ${aktif ? "Aktif" : "Nonaktif"}
`;

console.log(profil);

// Type conversion
let input = "42";
let angka = Number(input);
console.log(angka + 8); // 50

9. Ringkasan

Tipe Contoh typeof
String "Halo" string
Number 42, 3.14 number
Boolean true, false boolean
Null null object
Undefined undefined undefined
Symbol Symbol('id') symbol
BigInt 9007199254740991n bigint
Keyword Bisa Diubah Bisa Declare Ulang
var ✅ ✅
let ✅ ❌
const ❌ ❌

Penutup

Variabel dan tipe data adalah fondasi JavaScript. Gunakan const sebagai default, let kalau perlu diubah, dan hindari var. Pahami juga type conversion agar tidak ada bug yang tidak terduga.

Di artikel selanjutnya, kita akan bahas Operators & Expressions — arithmetic, comparison, logical, dan lainnya.

Selamat bereksperimen! 🚀


Mail Facebook Twitter Whatsapp