Có phương pháp nào sử dụng JavaScript hoặc jQuery để xác định ngày nào trong tuần đó không? Ví dụ: nếu ngày người dùng chọn trong hộp là Chủ nhật, tôi có thể cảnh báo họ.Sử dụng jQuery/JS để xác định DAY OF WEEK
Cảm ơn
Có phương pháp nào sử dụng JavaScript hoặc jQuery để xác định ngày nào trong tuần đó không? Ví dụ: nếu ngày người dùng chọn trong hộp là Chủ nhật, tôi có thể cảnh báo họ.Sử dụng jQuery/JS để xác định DAY OF WEEK
Cảm ơn
new Date().getDay(); //0=Sun, 1=Mon, ..., 6=Sat
Xem thêm: Javascript Date Object trên MDN.
Lời cảnh cáo: Điều này trả về ngày trong tuần trên trình duyệt. Vì trái đất không bằng phẳng nên ngày trong tuần cho một số người dùng có thể khác với ngày trong tuần cho máy chủ của bạn. Điều này có thể hoặc không thể có liên quan đến dự án của bạn ...
Nếu bạn đang làm rất nhiều công việc cập nhật, bạn có thể muốn xem xét các thư viện ngày JavaScript như Datejs hoặc Moment.js
today = new Date()
dayIndex = today.getDay()
... sẽ giúp bạn có được một đại diện số của "hôm nay".
0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday
ngày nào là chủ nhật? :) – Jason
Zero là Sunday :) Bởi vì đó là một ngôn ngữ từ Hoa Kỳ. Ở châu Âu, sẽ có ý nghĩa hơn để có thứ hai là số không, nhưng đó không phải là trường hợp ở đây. –
Nếu bạn cần xử lý ngày, hãy xem DateJS.
Nếu bạn chỉ cần điều này một lần trong trang của bạn, giữ cho nó đơn giản ...
["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][(new Date()).getDay()]
Tôi không nghĩ rằng nó sẽ là một thỏa thuận lớn để mở rộng, nhưng kể từ khi tôi có 3 phiếu bầu cho quốc tế hóa trong các ý kiến ...
// dictionary version
({
es: ["Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado"],
en: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
})['en'][(new Date()).getDay()]
// returns Wednesday
// list version
langs=['en','es']
[
["Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado"],
["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
][langs.indexOf('es')][(new Date()).getDay()]
// returns Miércoles
Và cuối cùng, phiên bản golf mã ...
["Sun","Mon","Tues","Wednes","Thurs","Fri","Satur"][(new Date()).getDay()]+"day"
Chuỗi này có thể được đặt vào một mẫu gạch dưới, không có phần Date() mới, để định dạng thuận tiện các đối tượng Ngày tháng. _.template ( '<% = getMonth() + 1%>. <% = getDate()%>. <% = getFullYear()%><% = ["Chủ nhật", "Thứ Hai", "Thứ Ba", "Thứ Tư", "Thứ Năm", "Thứ Sáu", "Thứ Bảy"] [getDay()]%> ', someDateObject ) – grantwparks
tốt đẹp! cảm ơn vì đã đóng góp. –
'[" Mặt trời "," Thứ Hai "," Thứ Ba "," Thứ Tư "," Thứ Năm "," Thứ Sáu "," Thứ Bảy "] [(Ngày mới()). GetDay()] +" ngày "' Vì tất cả 7 stings kết thúc với cùng 3 chữ cái, bạn có thể trích xuất chúng thay vì lặp lại chúng. –
một một rõ ràng hơn nd câu trả lời chi tiết hơn:
var days = [
'SUN', //Sunday starts at 0
'MON',
'TUE',
'WED',
'THU',
'FRI',
'SAT'
];
d = new Date(); //This returns Wed Apr 02 2014 17:28:55 GMT+0800 (Malay Peninsula Standard Time)
x = d.getDay(); //This returns a number, starting with 0 for Sunday
alert (days[x]);
Working fiddle.
gửi ngày và bạn sẽ nhận được vị trí của cùng một ngày trong tháng đó. tức là ngày 15/02/2018 là Thứ Năm Thứ Ba.
/*return day postion and dayname */
function weekAndDay(date) {
var arrayWeek =[];
var date = new Date(date),
days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'],
prefixes = ['','First', 'Second', 'Third', 'Fourth', 'Fifth'];
if (date.getDate() % 7 == 0) {
var prefixes2 = date.getDate()/7;
}else{
var prefixes2 = Math.ceil(date.getDate()/7);
}
arrayWeek.push({
'dayPos' : prefixes[prefixes2] ,
'dayName' : days[date.getDay()]
});
return arrayWeek;
}
Bạn có thể thêm một số lời giải thích cho câu trả lời của mình không? Chỉ hiển thị mã có thể gây nhầm lẫn. –
cảm ơn bạn nhiều! :) – Jason
Trang "Ngày đối tượng Javascript" trên MDN bao gồm hỗ trợ trình duyệt (trong trường hợp này là tuyệt vời). https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date –