TypeScript - Objek Tanggal: Panduan untuk Pemula
Hai teman, super bintang coding masa depan! Hari ini, kita akan memulai perjalanan menarik ke dunia tanggal di TypeScript. Jangan khawatir jika Anda belum pernah menulis baris kode sebelumnya - saya akan menjadi panduan ramah Anda, dan kita akan mengambil langkah ini satu per satu. Pada akhir panduan ini, Anda akan dapat memanipulasi tanggal seperti seorang ahli!
Apa Itu Objek Tanggal?
Sebelum kita masuk ke detail, mari bicarakan apa sebenarnya objek Tanggal. Dalam TypeScript (dan JavaScript), objek Tanggal mewakili satu momen waktu. Itu seperti foto sebuah tanggal dan waktu tertentu, yang kita dapat manipulasi dan gunakan dalam program kita.
Pikirkan itu seperti jam digital yang Anda dapat mengatur ke waktu apapun Anda inginkan, masa lalu, sekarang, atau masa depan. Keren, kan?
Sintaks: Membuat Objek Tanggal
Sekarang, mari kita lihat bagaimana kita dapat membuat objek Tanggal di TypeScript. Ada beberapa cara untuk melakukan ini, dan saya akan menunjukkan setiap satu dengan contoh.
1. Tanggal dan Waktu Saat Ini
Untuk membuat objek Tanggal dengan tanggal dan waktu saat ini, Anda cukup menggunakan new Date()
tanpa argument.
let currentDate = new Date();
console.log(currentDate);
Jika Anda menjalankan kode ini, Anda akan melihat sesuatu seperti ini:
2023-06-15T12:30:45.678Z
Ini mungkin terlihat sedikit menakutkan, tapi jangan khawatir! Ini hanya menunjukkan tanggal dan waktu saat ini dalam format standar.
2. Tanggal dan Waktu Tertentu
Anda juga dapat membuat objek Tanggal untuk tanggal dan waktu tertentu. Ada beberapa cara untuk melakukan ini:
a. Menggunakan string tanggal
let christmas = new Date("December 25, 2023 00:00:00");
console.log(christmas);
Ini akan mengeluarkan:
2023-12-25T00:00:00.000Z
b. Menggunakan parameter terpisah
let newYear = new Date(2024, 0, 1, 0, 0, 0);
console.log(newYear);
Ini akan mengeluarkan:
2024-01-01T00:00:00.000Z
Perhatikan bahwa bulan adalah 0 untuk Januari. Dalam JavaScript dan TypeScript, bulan diindeks nol, artinya Januari adalah 0, Februari adalah 1, dan seterusnya. Ini adalah keanehan yang sering menangkap pemula, jadi ingat itu!
c. Menggunakan milisecond sejak epoch
Anda juga dapat membuat tanggal dengan menentukan jumlah milisecond sejak 1 Januari 1970 (dikenal sebagai "epoch"):
let someDate = new Date(1687012345678);
console.log(someDate);
Ini akan mengeluarkan tanggal dan waktu yang sesuai dengan jumlah milisecond setelah epoch.
Menggunakan Objek Tanggal
Sekarang kita tahu bagaimana membuat objek Tanggal, mari kita lihat beberapa hal yang kita dapat lakukan dengan mereka.
Mendapatkan Komponen Tanggal
Objek Tanggal memiliki beberapa metode untuk mendapatkan komponen tanggal berbeda:
let today = new Date();
console.log("Tahun Lengkap:", today.getFullYear());
console.log("Bulan:", today.getMonth());
console.log("Tanggal:", today.getDate());
console.log("Hari:", today.getDay());
console.log("Jam:", today.getHours());
console.log("Menit:", today.getMinutes());
console.log("Detik:", today.getSeconds());
Ini mungkin mengeluarkan sesuatu seperti ini:
Tahun Lengkap: 2023
Bulan: 5
Tanggal: 15
Hari: 4
Jam: 12
Menit: 45
Detik: 30
Ingat, getMonth()
mengembalikan bulan yang diindeks nol, jadi 5 berarti Juni!
Mengatur Komponen Tanggal
Seperti halnya kita dapat mendapatkan komponen tanggal, kita juga dapat mengatur mereka:
let futureDate = new Date();
futureDate.setFullYear(2025);
futureDate.setMonth(11); // Desember
futureDate.setDate(31);
futureDate.setHours(23);
futureDate.setMinutes(59);
futureDate.setSeconds(59);
console.log(futureDate);
Ini akan mengatur tanggal ke 31 Desember 2025, pukul 23:59:59.
Memformat Tanggal
TypeScript (dan JavaScript) menyediakan beberapa metode bawaan untuk memformat tanggal:
let event = new Date("July 4, 2023 12:00:00");
console.log(event.toDateString());
console.log(event.toTimeString());
console.log(event.toLocaleDateString());
console.log(event.toLocaleTimeString());
console.log(event.toISOString());
Ini akan mengeluarkan:
Tue Jul 04 2023
12:00:00 GMT+0000 (Coordinated Universal Time)
7/4/2023
12:00:00 PM
2023-07-04T12:00:00.000Z
Aritmetika Tanggal
Salah satu hal yang menarik tentang objek Tanggal adalah kita dapat melakukan operasi matematika dengan mereka! Mari kita lihat beberapa contoh:
Menambahkan Hari
let today = new Date();
let nextWeek = new Date(today.getTime() + 7 * 24 * 60 * 60 * 1000);
console.log("Hari ini:", today);
console.log("Minggu depan:", nextWeek);
Ini menambahkan 7 hari ke tanggal saat ini. Kita kalikan 7 (hari) dengan 24 (jam) dengan 60 (menit) dengan 60 (detik) dengan 1000 (milisecond) untuk mendapatkan jumlah milisecond dalam seminggu.
Mengurangi Tanggal
Kita juga dapat menemukan perbedaan antara dua tanggal:
let start = new Date("March 1, 2023");
let end = new Date("June 15, 2023");
let difference = end.getTime() - start.getTime();
let days = Math.floor(difference / (24 * 60 * 60 * 1000));
console.log(`Ada ${days} hari antara ${start.toDateString()} dan ${end.toDateString()}`);
Ini akan menghitung jumlah hari antara 1 Maret 2023 dan 15 Juni 2023.
Kesimpulan
Selamat! Anda telah mengambil langkah pertama ke dunia objek Tanggal di TypeScript. Kita telah menutupi pembuatan tanggal, mendapatkan dan mengatur komponen tanggal, memformat tanggal, dan bahkan melakukan operasi aritmetika tanggal.
Ingat, bekerja dengan tanggal kadang-kadang bisa sulit, khususnya saat berurusan dengan zona waktu berbeda atau jam musim panas. Tetapi dengan latihan, Anda akan menjadi lebih nyaman dan mahir.
Berikut adalah tabel yang menggabungkan metode utama yang kita telah bahas:
Metode | Deskripsi |
---|---|
new Date() |
Membuat objek Tanggal baru |
getFullYear() |
Mendapatkan tahun (4 digit) |
getMonth() |
Mendapatkan bulan (0-11) |
getDate() |
Mendapatkan hari bulan (1-31) |
getDay() |
Mendapatkan hari minggu (0-6) |
getHours() |
Mendapatkan jam (0-23) |
getMinutes() |
Mendapatkan menit (0-59) |
getSeconds() |
Mendapatkan detik (0-59) |
setFullYear() |
Mengatur tahun |
setMonth() |
Mengatur bulan |
setDate() |
Mengatur hari bulan |
setHours() |
Mengatur jam |
setMinutes() |
Mengatur menit |
setSeconds() |
Mengatur detik |
toDateString() |
Mengembalikan bagian tanggal sebagai string yang dapat dibaca manusia |
toTimeString() |
Mengembalikan bagian waktu sebagai string yang dapat dibaca manusia |
toLocaleDateString() |
Mengembalikan bagian tanggal menggunakan konvensi lokal |
toLocaleTimeString() |
Mengembalikan bagian waktu menggunakan konvensi lokal |
toISOString() |
Mengembalikan tanggal dalam format ISO |
Terus latihan, terus coding, dan yang paling penting, bersenang-senang! Dunia pemrograman penuh dengan kemungkinan menarik, dan menguasai tanggal hanya awalnya. Selamat coding!
Credits: Image by storyset