Đối tượng Date() trong JavaScript

Đối tượng Date() trong JavaScript
Đối tượng Date() trong JavaScript

Chức năng của Đối tượng Date() trong JavaScript

Đối tượng Date() trong JavaScript dùng để chứa một thời gian nhất định bằng cách lấy thời gian hiện tại hoặc tự tạo thời gian.

Cú pháp của Đối tượng Date() trong JavaScript

Đối tượng Date lấy thời gian hiện tại

var doituongdate = new Date();

doituongdate: Đối tượng thời gian hiện tại new Date();

Đối tượng Date chỉ định thời gian

var doituongdate = new Date(thang ngay, nam gio:phut:giay.miligiay);

doituongdate: Đối tượng thời gian chỉ định new Date();

thang: Tháng bằng tiếng anh (Ví dụ: September)

ngay: Ngày (Ví dụ: 02)

nam: Năm (Ví dụ: 2025)

gio: Giờ (Ví dụ: 09)

phut: Phút (Ví dụ: 25)

giay: Giây (Ví dụ: 20)

miligiay: Mili giây được tính từ số 0 tới số 999 (Ví dụ: 666)

Ví dụ:

var datehai = new Date("September 02, 2025 09:25:30.666");

Code Đối tượng Date() trong JavaScript

<script>
// Tạo đối tượng Date bằng cách lấy thời gian hiện tại
document.write("<b>// Tạo đối tượng Date bằng cách lấy thời gian hiện tại</b><br>");
var thoigianmot = new Date();
document.write(thoigianmot+"<br>");
// Tạo đối tượng Date bằng cách tạo định dạng Y-m-d
document.write("<b>// Tạo đối tượng Date bằng cách tạo định dạng Y-m-d</b><br>");
var thoigianhai = new Date("2025-08-30");
document.write(thoigianhai+"<br>");
</script>

Kết quả:

// Tạo đối tượng Date bằng cách lấy thời gian hiện tại
Mon Sep 01 2025 20:59:53 GMT+0700 (Giờ Đông Dương)
// Tạo đối tượng Date bằng cách tạo định dạng Y-m-d
Sat Aug 30 2025 07:00:00 GMT+0700 (Giờ Đông Dương)

Chạy Thử

Những lưu ý quan trọng khi làm việc với Date trong JavaScript

Đối tượng Date giúp JavaScript xử lý ngày giờ, nhưng kết quả có thể khác với mong đợi nếu không chú ý đến cách tạo, đọc và chuyển đổi thời gian. Một vài nguyên tắc dưới đây sẽ giúp hạn chế lỗi khi làm việc với Date.

Cẩn thận với tháng khi tạo đối tượng Date

Khi truyền các giá trị riêng lẻ vào new Date(), tháng được đánh số từ 0 đến 11. Vì vậy, tháng 1 tương ứng với 0, tháng 2 tương ứng với 1 và tháng 12 tương ứng với 11.

const date = new Date(2026, 7, 17);
console.log(date);

Trong ví dụ trên, giá trị 7 đại diện cho tháng 8. Đây là điểm rất dễ gây nhầm khi tạo ngày bằng năm, tháng và ngày thay vì sử dụng chuỗi ngày tháng.

Phân biệt thời gian địa phương và thời gian UTC

JavaScript có thể làm việc với thời gian theo múi giờ địa phương hoặc theo UTC. Các phương thức bắt đầu bằng getUTC đọc giá trị theo UTC, trong khi những phương thức như getHours() hoặc getDate() sử dụng múi giờ địa phương của môi trường đang chạy.

Điều này đặc biệt quan trọng khi website trao đổi dữ liệu giữa nhiều quốc gia. Nếu không xác định rõ múi giờ, cùng một thời điểm có thể được hiển thị thành ngày hoặc giờ khác nhau.

Kiểm tra ngày không hợp lệ trước khi xử lý

Không phải mọi đối tượng Date được tạo ra đều chứa một thời điểm hợp lệ. Khi dữ liệu đầu vào sai định dạng hoặc không thể chuyển thành ngày hợp lệ, Date có thể tạo ra giá trị Invalid Date.

const date = new Date("du-lieu-khong-hop-le");

if (Number.isNaN(date.getTime())) {
    console.log("Ngày không hợp lệ");
}

Kiểm tra dữ liệu trước khi định dạng hoặc tính toán sẽ giúp tránh đưa kết quả sai vào giao diện, biểu mẫu hoặc dữ liệu gửi lên máy chủ.

Tránh nhầm giữa Date và chuỗi ngày tháng

Chuỗi như "2026-08-17" chỉ là dữ liệu dạng text cho đến khi JavaScript phân tích nó thành một giá trị ngày. Vì vậy, không nên xem chuỗi ngày tháng và đối tượng Date là cùng một kiểu dữ liệu.

Khi nhận ngày từ API, biểu mẫu hoặc cơ sở dữ liệu, nên xác định rõ dữ liệu đang ở dạng chuỗi hay đã được chuyển thành Date. Việc này giúp tránh lỗi khi gọi các phương thức xử lý ngày giờ.

Lưu ý khi so sánh và tính toán thời gian

Hai đối tượng Date khác nhau không nên được so sánh bằng cách kiểm tra trực tiếp hai đối tượng có giống nhau hay không. Cách phù hợp là lấy giá trị thời gian của chúng để so sánh.

const firstDate = new Date("2026-08-17");
const secondDate = new Date("2026-08-20");

if (firstDate.getTime() < secondDate.getTime()) {
    console.log("firstDate xảy ra trước secondDate");
}

Khi cần tính khoảng cách giữa hai thời điểm, cũng nên dựa trên giá trị thời gian thay vì tự cộng trừ ngày, tháng theo cách thủ công. Cách này giảm nguy cơ sai lệch khi gặp tháng có số ngày khác nhau hoặc thời điểm chuyển sang năm mới.

Lời kết

Cảm ơn các bạn đã tham khảo bài viết Đối tượng Date() trong JavaScript.

  • 0 Bình luận
Trần Thị Vân | Content Creator Web Mới
Trần Thị Vân
Trần Thị Vân là Content Creator tại Web Mới, phụ trách nghiên cứu, biên soạn nội dung và chia sẻ kiến thức về website, SEO, lập trình cùng các xu hướng công nghệ
Đánh giá
Chia sẻ nội dung đánh giá của bạn về Đối tượng Date() trong JavaScript
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *
Đánh giá của bạn
Tên *
Email
Số điện thoại *
Bình luận, Hỏi đáp
Yêu Cầu Báo Giá
Gửi trang web mẫu cần làm theo, chúng tôi sẽ báo giá đến bạn từ Email (tanlucit09@gmail.com - Bùi Tấn Lực) hoặc Zalo (Lực IT - 0398259259) !