Date là một đối tượng có sẵn trong Javascript dùng để quản lý các thao tác liên quan tới ngày tháng.
Chúng ta có thể khởi tạo đối tượng Date bằng cách sử dụng từ khóa new
theo cú pháp sau:
var currentDate = new Date();
Khi không có tham số nào được truyền vào hàm khởi tạo, đối tượng Date sẽ được khởi tạo với thời gian hiện tại của hệ thống.
Đối tượng Date trong Javascript cung cấp các phương thức để lấy thông tin về ngày, tháng, năm, giờ, phút, giây và mili giây. Dưới đây là một số ví dụ:
Lấy ngày trong tuần
var currentDate = new Date();
var dateShort = currentDate.toLocaleDateString('en-US', {weekday: 'short'});
var dateLong = currentDate.toLocaleDateString('en-US', {weekday: 'long'});
Lấy ngày trong tháng:
var currentDate = new Date();
var day = currentDate.getDate();
Lấy tháng:
var currentDate = new Date();
var month = currentDate.getMonth() + 1; // Giảm đi 1 vì tháng bắt đầu từ 0
Lấy năm:
var currentDate = new Date();
var year = currentDate.getFullYear();
Lấy giờ:
var currentDate = new Date();
var hours = currentDate.getHours();
Lấy phút:
var currentDate = new Date();
var minutes = currentDate.getMinutes();
Lấy giây:
var currentDate = new Date();
var seconds = currentDate.getSeconds();
Lấy AM/PM
var currentDate = new Date();
var phaseTime = currentDate.toLocaleString('en-US', { hour: 'numeric', hour12: true }).slice(-2);
Javascript cũng cung cấp các phương thức để xử lý thời gian. Dưới đây là một số ví dụ:
Thêm một số ngày vào ngày hiện tại:
var currentDate = new Date();
currentDate.setDate(currentDate.getDate() + 7); // Thêm 7 ngày
So sánh hai ngày:
var currentDate = new Date();
var futureDate = new Date('2023-12-31');
if (currentDate < futureDate) {
console.log('Ngày hiện tại trước ngày tương lai');
} else if (currentDate > futureDate) {
console.log('Ngày hiện tại sau ngày tương lai');
} else {
console.log('Ngày hiện tại và ngày tương lai giống nhau');
}
Để tính toán khoảng cách thời gian giữa hai ngày, chúng ta có thể sử dụng phép trừ giữa hai đối tượng Date. Dưới đây là một ví dụ:
var startDate = new Date('2023-01-01');
var endDate = new Date('2023-12-31');
var timeDiff = endDate - startDate; // Đơn vị tính là mili giây
var daysDiff = Math.floor(timeDiff / (1000 * 60 * 60 * 24)); // Chuyển sang số ngày
console.log('Khoảng cách giữa hai ngày là ' + daysDiff + ' ngày');