Phương thức Date setTime() trong JavaScript

Phương thức Date setTime() trong JavaScript
Phương thức Date setTime() trong JavaScript

Chức năng của Phương thức Date setTime() trong JavaScript

Phương thức Date setTime() trong JavaScript dùng để cập nhật thời gian bằng số mili giây cho một đối tượng thời gian Date theo múi giờ địa phương, số mili giây này tính từ 1/1/1970 tới một mốc thời gian nào đó.

Cú pháp của Phương thức Date setTime() trong JavaScript

doituongdate.setTime(miligiay);

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

miligiay: là số mili giây của một mốc thời gian nào đó.

Code Phương thức Date setTime() trong JavaScript

<script>
// Thời gian cập nhật bằng số mili giây
document.write("<b>// Thời gian cập nhật bằng số mili giây</b><br>");
var thoigian  = new Date(); // Khai báo đối tượng Date là thời gian hiện tại
thoigian.setTime(1756779930000); // Thay đổi thời gian của đối tượng date là ngày 2/9/2025, 9 giờ 25 phút 30 giây, thay bằng số mili giây
document.write("Thời gian cập nhật bằng số mili giây: "+thoigian+"<br>"); // Kết quả: Tue Sep 02 2025 09:25:30 GMT+0700 (Giờ Đông Dương)
</script>

Kết quả:

// Thời gian cập nhật bằng số mili giây
Thời gian cập nhật bằng số mili giây: Tue Sep 02 2025 09:25:30 GMT+0700 (Giờ Đông Dương)

Chạy Thử

Ứng dụng Date setTime() trong các tình huống thực tế

Cộng hoặc trừ thời gian bằng timestamp với setTime()

Một cách dùng hữu ích của setTime() là điều chỉnh thời gian bằng cách cộng hoặc trừ trực tiếp số mili giây vào timestamp hiện tại. Cách này phù hợp khi cần tính các khoảng thời gian cố định như thêm vài phút, vài giờ hoặc lùi một số ngày.

Ví dụ, để tạo một thời điểm mới cách thời gian hiện tại 24 giờ, có thể lấy timestamp bằng getTime(), cộng thêm số mili giây tương ứng rồi truyền kết quả cho setTime().

const date = new Date();

const oneDay = 24 * 60 * 60 * 1000;
date.setTime(date.getTime() + oneDay);

console.log(date);

Tương tự, nếu muốn lùi thời gian 30 phút, chỉ cần trừ số mili giây tương ứng. Điểm đáng chú ý là setTime() làm việc trực tiếp với timestamp nên cách tính này rõ ràng khi xử lý các khoảng thời gian được xác định bằng mili giây.

Đặt lại thời gian Date từ một timestamp có sẵn

Khi dữ liệu thời gian được lưu dưới dạng timestamp, setTime() có thể dùng để đưa giá trị đó vào một đối tượng Date. Điều này hữu ích khi nhận thời gian từ API, cơ sở dữ liệu hoặc một nguồn dữ liệu khác sử dụng timestamp.

const timestamp = 1786960800000;
const date = new Date();

date.setTime(timestamp);

console.log(date);

Phương thức này thay đổi chính đối tượng Date hiện tại thay vì tạo một đối tượng Date mới. Vì vậy, nếu đối tượng ngày giờ đang được sử dụng ở nhiều vị trí trong chương trình, cần lưu ý rằng giá trị thời gian của nó sẽ được cập nhật sau khi gọi setTime().

Khi nào nên dùng setTime() thay vì các phương thức set khác?

Nên ưu tiên setTime() khi giá trị thời gian cần thay đổi đã được biểu diễn dưới dạng timestamp hoặc khi bài toán yêu cầu cộng, trừ một khoảng thời gian cụ thể bằng mili giây.

Trong khi đó, các phương thức như setHours(), setMinutes() hay setSeconds() phù hợp hơn khi muốn thay đổi trực tiếp một thành phần cụ thể của ngày giờ. Chẳng hạn, nếu chỉ cần đưa phút về một giá trị nhất định thì setMinutes() dễ đọc hơn so với việc tự tính lại toàn bộ timestamp.

Do đó, lựa chọn phương thức nên dựa trên dạng dữ liệu và mục đích xử lý. Nếu thao tác xoay quanh timestamp hoặc khoảng thời gian tính bằng mili giây, setTime() thường là lựa chọn gọn và trực tiếp.

Lời kết

Cảm ơn các bạn đã tham khảo bài viết Phương thức Date setTime() trong JavaScript.

  • ★★★★★ ★★★★★
  • 0 Bình luận
CEO Bùi Tấn Lực | Founder Web Mới
Bùi Tấn Lực
Tìm hiểu về CEO Bùi Tấn Lực, Founder Web Mới với nhiều năm kinh nghiệm trong lĩnh vực phát triển website, SEO và chia sẻ kiến thức công nghệ
Đánh giá
Chia sẻ nội dung đánh giá của bạn về Phương thức Date setTime() 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) !