Phương thức Date getDay() trong JavaScript
Bùi Tấn Lực
- 963
- 02/09/2025
Chức năng của Phương thức Date getDay() trong JavaScript
Phương thức Date getDay() trong JavaScript dùng để lấy giá trị của thứ trong tuần theo múi giờ địa phương dựa vào thời gian hiện tại hoặc thời gian chỉ định trong đối tượng Date, sau khi có giá trị của thứ ta dùng mảng hoặc function để xuất ra thứ trong tuần.
Cú pháp của Phương thức Date getDay() trong JavaScript
doituongdate.getDay();
doituongdate: Đối tượng thời gian new Date();
Giá trị của Phương thức Date getDay() trong JavaScript
0: Chủ Nhật
1: Thứ 2
2: Thứ 3
3: Thứ 4
4: Thứ 5
5: Thứ 6
6: Thứ 7
Code Phương thức Date getDay() trong JavaScript
<script>
var mangtuan = ["Chủ Nhật","Thứ 2","Thứ 3","Thứ 4","Thứ 5","Thứ 6","Thứ 7"];
// Lấy thứ hiện tại
document.write("<b>// Lấy thứ hiện tại</b><br>");
var date = new Date();
var thu = date.getDay();
document.write("Giá trị của thứ hiện tại: "+thu+"<br>");
document.write("Thứ hiện tại: "+mangtuan[thu]+"<br>"); // Kết quả: Thứ 3
// Lấy thứ theo thời gian chỉ định
document.write("<b>// Lấy thứ theo thời gian chỉ định</b><br>");
var date = new Date("2025-08-30");
var thuhai = date.getDay();
document.write("Giá trị của thứ vào ngày 30/8/2025 : "+thuhai+"<br>");
document.write("Thứ hiện tại vào ngày 30/8/2025: "+mangtuan[thuhai]+"<br>"); // Kết quả: Thứ 7
</script>
Kết quả:
// Lấy thứ hiện tại
Giá trị của thứ hiện tại: 2
Thứ hiện tại: Thứ 3
// Lấy thứ theo thời gian chỉ định
Giá trị của thứ vào ngày 30/8/2025 : 6
Thứ hiện tại vào ngày 30/8/2025: Thứ 7
Những lưu ý khi sử dụng getDay() trong JavaScript
Khi làm việc với getDay(), điều quan trọng không chỉ là biết cách gọi phương thức mà còn phải hiểu chính xác giá trị mà nó trả về. Một số nhầm lẫn nhỏ về cách đánh số thứ trong tuần hoặc giữa ngày trong tuần và ngày trong tháng có thể khiến kết quả xử lý ngày tháng sai.
getDay() trả về thứ theo quy ước nào?
Phương thức getDay() trả về một số nguyên từ 0 đến 6, đại diện cho thứ trong tuần của đối tượng Date. JavaScript quy ước Chủ nhật là 0, thứ Hai là 1 và tiếp tục tăng dần đến thứ Bảy là 6.
Vì vậy, nếu muốn hiển thị tên thứ thay vì con số, có thể dùng giá trị nhận được làm vị trí để lấy phần tử tương ứng trong một mảng. Cách này giúp giao diện dễ đọc hơn mà không làm thay đổi giá trị gốc của đối tượng Date.
Phân biệt getDay() với getDate()
getDay() và getDate() đều làm việc với đối tượng Date nhưng trả về hai loại thông tin hoàn toàn khác nhau. getDay() cho biết thứ trong tuần, còn getDate() trả về ngày trong tháng, với giá trị từ 1 đến 31.
Chẳng hạn, một ngày cụ thể có thể có getDay() bằng 1, nghĩa là thứ Hai, nhưng getDate() lại bằng 17, nghĩa là ngày 17 của tháng. Do đó, không nên dùng hai phương thức này thay thế cho nhau khi xây dựng lịch, bộ lọc ngày hoặc chức năng hiển thị thời gian.
Vì sao kết quả getDay() có thể gây nhầm lẫn?
Nguyên nhân phổ biến nhất là thói quen nghĩ rằng ngày trong tuần được đánh số từ 1. Trong JavaScript, getDay() bắt đầu từ 0 nên Chủ nhật là trường hợp đặc biệt cần lưu ý.
Ngoài ra, kết quả của phương thức phụ thuộc vào ngày được lưu trong đối tượng Date. Nếu dữ liệu ngày được tạo từ chuỗi thời gian hoặc được xử lý giữa các múi giờ khác nhau, ngày thực tế có thể thay đổi và kéo theo kết quả của getDay() thay đổi. Vì vậy, khi xử lý dữ liệu ngày tháng từ nhiều nguồn, nên kiểm tra cách tạo đối tượng Date trước khi sử dụng giá trị trả về.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Phương thức Date getDay() trong JavaScript.
- 0 Bình luận
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 *