Trong JavaScript, để thao tác với date (ngày tháng), bạn có thể sử dụng các phương thức của object Date
. Những phương thức này cho phép bạn thiết lập các giá trị khác nhau của ngày tháng, bao gồm:
- Năm
- Tháng
- Ngày
- Giờ
- Phút
- Giây
- Mili giây
Các phương thức thiết lập ngày:
Phương thức | Mô tả |
---|---|
setDate(day) | Thiết lập ngày (1-31) |
setFullYear(year, [month], [day]) | Thiết lập năm, (tùy chọn) tháng và ngày |
setHours(hours) | Thiết lập giờ (0-23) |
setMilliseconds(ms) | Thiết lập mili giây (0-999) |
setMinutes(minutes) | Thiết lập phút (0-59) |
setMonth(month) | Thiết lập tháng (0-11) |
setSeconds(seconds) | Thiết lập giây (0-59) |
setTime(time) | Thiết lập thời gian (mili giây kể từ 01/01/1970) |
Ví dụ về phương thức thiết lập năm:
const today = new Date();
today.setFullYear(2023); // Thiết lập năm 2023
console.log(today); // In ra ngày tháng với năm 2023
Ví dụ về phương thức thiết lập tháng và ngày.
today.setFullYear(2023, 11, 31); // Thiết lập năm 2023, tháng 12 (11), ngày 31
console.log(today); // In ra ngày 31/12/2023
Ví dụ về phương thức thiết lập ngày.
today.setDate(15); // Thiết lập ngày 15
console.log(today); // In ra ngày 15 của tháng hiện tại
Ví dụ về phương thức thêm ngày cho một ngày.
today.setDate(today.getDate() + 5); // Thêm 5 ngày cho ngày hiện tại
console.log(today); // In ra ngày sau 5 ngày
Ví dụ về phương thức thiết lập giờ, phút, giây:
today.setHours(22); // Thiết lập giờ 22
today.setMinutes(30); // Thiết lập phút 30
today.setSeconds(45); // Thiết lập giây 45
console.log(today); // In ra ngày tháng với thời gian 22:30:45
Ví dụ về phương thức so sánh hai ngày.
const today = new Date(); // Ngày hiện tại
const someday = new Date(); // Tạo một date mới
someday.setFullYear(2100, 0, 14); // Thiết lập ngày 14/01/2100
if (someday > today) {
console.log("Hôm nay là trước 14/01/2100.");
} else {
console.log("Hôm nay là sau 14/01/2100.");
}
- Lưu ý:
- JavaScript đếm tháng từ 0 đến 11. Tháng 1 là 0, tháng 12 là 11.
- Các phương thức thiết lập ngày sẽ tự động xử lý nếu việc thay đổi ngày tháng vượt qua giới hạn của tháng hoặc năm.