Dalam tutorial ini, kita akan belajar tentang konversi tipe dalam JavaScript dengan bantuan contoh.

Dalam pemrograman, konversi tipe adalah proses mengubah data dari satu tipe ke tipe lainnya. Misalnya: mengonversi data String menjadi Number.

Ada dua jenis konversi tipe dalam JavaScript.

JavaScript Implicit Conversion (Konversi)

Dalam situasi tertentu, JavaScript secara otomatis mengonversi satu tipe data ke tipe data lainnya (ke tipe yang tepat). Ini dikenal sebagai konversi Implicit.

Contoh 1: Konversi Implicit ke String

let hasil;

hasil = "100" + 10; 
console.log(hasil)	// "10010"

hasil = "100" + true; 
console.log(hasil);	// "100true"

hasil = "100" + null; 
console.log(hasil);	// "100null"

hasil = "100" + undefined; 
console.log(hasil);	// "100undefined"

Catatan: Saat angka ditambahkan ke string, JavaScript mengonversi angka menjadi string sebelum penggabungan.

Contoh 2: Konversi Implicit ke Number

let hasil;

hasil = "100" - "10"; 
console.log(hasil);	// 90

hasil = "100" - 10;
console.log(hasil);	// 90

hasil = "100" * 10;
console.log(hasil);	// 1000

hasil = "100" / 10;
console.log(hasil);	// 10

Contoh 3: Hasil String Non-numerik ke NaN

let hasil;

hasil = "hello" - "world";
console.log(hasil);	// NaN

hasil = "100" - "hello";
console.log(hasil);	// NaN

Contoh 4: Konversi Boolean Implicit ke Number

let hasil;

hasil = "100" - true;
console.log(hasil); // 99

hasil = 100 + false;
console.log(hasil); // 100

hasil = 100 + true;
console.log(hasil); // 101

Catatan: JavaScript menganggap 0 sebagai salah atau false dan semua angka yang bukan nol sebagai benar. Dan, jika benar diubah menjadi angka, hasilnya selalu 1. Jadi darisini kita bisa menyimpulkan bahwa false = 0 dan true = 1.

Contoh 5: Konversi null ke Number

let hasil;

hasil = 100 + null;
console.log(hasil);	// 100

hasil = 100 - null;
console.log(hasil);	// 100

Contoh 6: undefined digunakan dengan number, boolean atau null

let hasil;

hasil = 100 + undefined;
console.log(hasil);	// NaN

hasil = 100 - undefined;
console.log(hasil);	// NaN

hasil = true + undefined;
console.log(hasil);	// NaN

hasil = null + undefined;
console.log(hasil);	// NaN

JavaScript Explicit Conversion (Konversi)

Kamu juga bisa mengonversi satu tipe data ke tipe data lainnya sesuai kehendak kamu. Konversi jenis yang kamu lakukan secara manual dikenal sebagai Explicit Conversion (Konversi).

Dalam JavaScript, konversi tipe explicit dilakukan menggunakan metode bawaan.

Berikut adalah beberapa metode umum konversi eksplisit.

1. Ubah ke Angka Secara Explicit

Untuk mengonversi string numerik dan nilai boolean menjadi angka, Kamu bisa menggunakan Number(). Sebagai contoh,

let hasil;

// string ke number
hasil = Number("100");
console.log(hasil);	// 100

hasil = Number("101e-1");
console.log(hasil);	// 10.1

// boolean ke number
hasil = Number(true);
console.log(hasil);	// 1

hasil = Number(false);
console.log(hasil);	// 0

Dalam JavaScript, string kosong dan nilai null mengembalikan 0. Contohnya,

let hasil;
hasil = Number(" ");
console.log(hasil);	// 0

let hasil = Number(null)
console.log(hasil);	// 0

Jika string adalah angka yang tidak valid, hasilnya adalah NaN. Sebagai contoh,

let hasil;
hasil = Number("Hai");
console.log(hasil);	// NaN

hasil = Number(undefined);
console.log(hasil);	// NaN

hasil = Number(NaN);
console.log(hasil);	// NaN

Catatan: Kamu juga bisa menghasilkan angka dari string menggunakan parseInt(), parseFloat(), operator unary + dan Math.floor(). Sebagai contoh,

let hasil;
hasil = parseInt("10.01");
console.log(hasil);	// 10

hasil = parseFloat("10.01");
console.log(hasil);	// 10.01

hasil = +"10.01";
console.log(hasil);	// 10.01

hasil = Math.floor("10.01");
console.log(hasil);	// 10

2. Konversi ke String Secara Explicit

Untuk mengonversi tipe data lain menjadi string, Anda dapat menggunakan String() atau toString(). Sebagai contoh,

// number ke string
let hasil;
hasil = String(100);
console.log(hasil);	// "100"

hasil = String(100 + 11);
console.log(hasil);	// "111"

// tipe data lain ke string
hasil = String(null);
console.log(hasil);	// "null"

hasil = String(undefined);
console.log(hasil);	// "undefined"

hasil = String(NaN);
console.log(hasil);	// "NaN"

hasil = String(true);
console.log(hasil);	// "true"

hasil = String(false);
console.log(hasil);	// "false"

// mengggunakan toString()
hasil = (100).toString();
console.log(hasil);	// "100"

hasil = true.toString();
console.log(hasil);	// "true"

Catatan: String() mengambil null dan undefined dan mengubahnya menjadi string. Namun, toString() memberikan kesalahan pada null.

Kurang lebih seperti ini pesan kesalahannya

Uncaught TypeError: Cannot read property 'toString' of null

3. Konversikan ke Boolean Secara Explicit

Untuk mengonversi tipe data lain ke boolean, kamu bisa menggunakan Boolean().

Dalam JavaScript, undefined, null, 0, NaN, "" dikonversi menjadi false. Sebagai contoh,

let hasil;
hasil = Boolean("");
console.log(hasil);	// false

hasil = Boolean(0);
console.log(hasil);	// false

hasil = Boolean(undefined);
console.log(hasil);	// false

hasil = Boolean(null);
console.log(hasil);	// false

hasil = Boolean(NaN);
console.log(hasil);	// false

Semua nilai lainnya menghasilkan true. Sebagai contoh,

let hasil
hasil = Boolean(100);
console.log(hasil);	// true

hasil = Boolean("Hai");
console.log(hasil);	// true

hasil = Boolean(" ");
console.log(hasil);	// true

Tabel Konversi Tipe/Jenis JavaScript

Tabel menunjukkan konversi nilai yang berbeda ke String, Number, dan Boolean dalam JavaScript.

Isi Konversi String Konversi Number Konversi Boolean
1 “1” 1 true
0 “0” 0 false
“1” “1” 1 true
“0” “0” 0 false
“sesuatu” “sesuatu” NaN true
true “true” 1 true
false “false” 0 false
null “null” 0 false
undefined “undefined” NaN false
'' "" 0 false
' ' " " 0 true

Jangan cuma di baca ya, tapi di praktikan juga supaya lebih mantab. Caranya kurang lebih seperti di materi JavaScript kita yang pertama, kalau belum tahu atau belum baca, lihat disini Apa Itu JavaScript.