Kodealgo

Konversi Tipe Data JavaScript

Konversi tipe (type conversion atau typecasting) adalah operasi mengonversi data dari satu tipe data ke tipe data yang lainnya, misalnya dari Number ke String, Number ke Boolean, dan lain sebagainya.

Proses konversi dapat dilakukan secara otomatis (implisit) maupun manual (eksplisit).

Misalnya, ketika kita menulis bilangan pecahan 2.0, interpreter JavaScript otomatis mengonversi ke bilangan bulat menjadi 2.

Untuk konversi manual, misalnya dari angka ke string menggunakan fungsi String(), String(20) menghasilkan "20".

Objek pembungkus nilai primitif seperti Number, String, Boolean dan lainnya (tanpa kata kunci new), dapat digunakan sebagai fungsi untuk mengonversi tipe data ke tipe terkait.

Konversi String ke Number

Konversi String ke Number dapat dilakukan melalui fungsi Number(), operator unary plus (+), atau method Number.

Fungsi Number() (tanpa kata kunci new) dapat digunakan untuk mengonversi String menjadi Number, misalnya String "2.5" dikonversi menjadi Number 2.5.

String kosong dikonversi menjadi 0, jika angka di dalam String bukan angka valid (selain String kosong) maka dikonversi menjadi NaN.

Contoh:

Number('2.5'); // 2.5
Number(''); // 0
Number('hello'); // NaN

Menggunakan operator unary plus lebih ringkas, kita hanya perlu menempatkan string yang akan dikonversi setelah operator (+).

Contoh:

+'2.5'; // 2.5
+''; // 0
+'hello'; // NaN

Berikut beberapa method Number yang dapat mengkonversi String menjadi Number:

MethodKeterangan
parseFloat()Konversi string ke angka pecahan (floating point).
parseInt()Konversi string ke bilangan bulat (integer).

Contoh:

parseFloat('4.567'); // 4.567
parseFloat('4.567hello'); // 4.567
parseFloat('hello'); // NaN

parseInt('4.567'); // 4
parseInt('4.567hello'); // 4
parseInt('hello'); // NaN

Konversi Number ke String

Konversi Number ke String dapat dilakukan melalui fungsi String() atau method Number.

Kita dapat melewatkan angka yang ingin dikonversi ke argumen fungsi String() secara langsung, variabel, atau ekspresi.

Contoh:

String(2); // "2"
String(2 * 2); // "4"
String(0); // "0"

Method Number toString() melakukan hal yang sama.

Contoh:

(2).toString(); // "2"
(2 * 2).toString(); // "4"
(0).toString(); // "0"

Beberapa method Number yang dapat mengonversi Number ke String:

MethodKeterangan
toExponential()Konversi Number ke String notasi eksponensial.
toFixed()Konversi Number ke String notasi fixed-point.
toPrecision()Konversi Number ke String dalam presisi yang ditentukan.

Contoh:

(2).toExponential(); // "2e+0"
(2.55).toFixed(); // "3"
(2.567).toPrecision(2); // "2.6"

Konversi Date ke Number

Fungsi Number() dan beberapa method Date dapat digunakan untuk mengonversi tanggal menjadi angka.

Fungsi Number() mengembalikan angka Unix Time yaitu milidetik dari 1 Januari 1970 hingga saat ini.

Contoh:

Number(new Date()); // 1637743158186

Beberapa method Date yang mengkonversi ke Number:

MethodNilai Kembalian (angka)
getTime()waktu Unix
getMilliseconds()milidetik (0 - 999)
getSeconds()detik (0 - 59)
getMinutes()menit (0 - 59)
getHours()jam (0 - 23)
getDate()tanggal (1 - 31)
getDay()haris kerja (0 - 6)
getMonth()bulan (0 - 11)
getFullYear()tahun (yyyy)

Contoh:

const dateNow = new Date();

dateNow.getTime(); // 1637743696122
dateNow.getMilliseconds(); // 122
dateNow.getSeconds(); // 16
dateNow.getMinutes(); // 48
dateNow.getHours(); // 15
dateNow.getDate(); // 24
dateNow.getDay(); // 3
dateNow.getMonth(); // 10
dateNow.getFullYear(); // 2021

Konversi Date ke String

Untuk mengonversi tanggal ke String kita bisa menggunakan fungsi String() atau method Date toString().

Contoh:

String(Date()); // Wed Nov 24 2021 15:51:27 GMT+0700 (Western Indonesia Time)
Date().toString(); // Wed Nov 24 2021 15:51:27 GMT+0700 (Western Indonesia Time)

Konversi Boolean ke Number

Konversi Boolean ke Number bisa dilakukan melalui fungsi Number() atau operator unary plus (+).

Contoh:

Number(false); // 0
Number(true); // 1

+false; // 0
+true; // 1

Konversi Boolean ke String

Konversi Boolean ke String dapat dilakukan melalui fungsi String() atau method Boolean toString().

Contoh:

String(false); // "false"
String(true); // "true"

false.toString(); // "false"
true.toString(); // "true"