Привет, я новичок в javascript, у меня есть такой код javascript
alert(DATE.value);
var d = new Date(DATE.value);
var year = d.getFullYear();
var month = d.getMonth();
var day = d.getDay();
alert(month);
alert(day);
if(2012 < year < 1971 | 1 > month+1 > 12 | 0 >day > 31){
alert(errorDate);
DATE.focus();
return false;
}
возьмем, например: DATE.value = "11/11/1991"
когда я звоню, alert(day);
это показывает мне 3
;
когда я звоню, alert(d);
он возвращает мне правильную информацию.
javascript
date
Алексей Булгак
источник
источник
Ответы:
использовать
.getDate
вместо.getDay
.источник
.getDate
можно ожидать, что будет возвращена полная дата, а не только день.Date.getYear() okay, Date.getMonth() okay, Date.getDate() what?
getDay()
возвращает день недели. Однако вы можете использовать этотgetDate()
метод.https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date/getDay
источник
getDay()
подарит вам день недели. Вы ищитеgetDate()
.источник
У меня была аналогичная проблема.
date.getMonth()
возвращает индекс в диапазоне от0 to 11
. Январь есть0
. Если вы создаете новыйdate()
-объект и хотите получить информацию о дате расчета, а не о текущей дате, вам нужно уменьшить только на месяц1
.Как это :
function getDayName () { var year = 2016; var month = 4; var day = 11; var date = new Date(year, month-1, day); var weekday = new Array("sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday"); return weekday[date.getDay()]; }
источник
function formatDate(date, callback) { var weekday = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"); var day = weekday[date.getDay()]; console.log('day',day); var d = date.getDate(); var hours = date.getHours(); ampmSwitch = (hours > 12) ? "PM" : "AM"; if (hours > 12) { hours -= 12; } else if (hours === 0) { hours = 12; } var m = date.getMinutes(); var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; var month = months[date.getMonth()]; var year = date.getFullYear(); newdate = day + ', ' + month + ' ' + d + ',' + year + ' at ' + hours + ":" + m + " " + ampmSwitch callback(newdate) }
и позвони с этим кодом
date="Fri Aug 26 2016 18:06:01 GMT+0530 (India Standard Time)" formatDate(date,function(result){ console.log('Date=',result); });
источник
С этого момента вы, вероятно, захотите использовать следующие функции для объектов Date:
function dayOf(date) { return date.getDate(); } function monthOf(date) { return date.getMonth() + 1; } function yearOf(date) { return date.getYear() + 1900; } function weekDayOf(date) { return date.getDay() + 1; } var date = new Date("5/15/2020"); console.log("Day: " + dayOf(date)); console.log("Month: " + monthOf(date)); console.log("Year: " + yearOf(date));
источник