Ответ 1
используйте .getDate
вместо .getDay
.
Значение, возвращаемое getDay, представляет собой целое число, соответствующее дню недели: 0 для воскресенья, 1 для понедельника, 2 для вторника и т.д.
Привет, я новичок в 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"
когда я вызываю предупреждение (день); это показывает мне 3;
когда я вызываю предупреждение (d); он возвращает мне правильную информацию
используйте .getDate
вместо .getDay
.
Значение, возвращаемое getDay, представляет собой целое число, соответствующее дню недели: 0 для воскресенья, 1 для понедельника, 2 для вторника и т.д.
Из MDN о getDay: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date/getDay
Возвращает день недели на указанную дату в соответствии с местными время.
Вероятно, вы хотите getDate: https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date/getDate
Возвращает день месяца на указанную дату в соответствии с местными время.
getDay()
возвращает день недели. Однако вы можете использовать метод getDate()
.
https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date/getDay
getDay()
предоставит вам день недели. Вы ищете getDate()
.
У меня была аналогичная проблема. date.getMonth()
возвращает индекс от 0 to 11
. Январь 0
. Если вы создаете новый date()
-объект и хотите получить информацию о дате costum, а не текущей, вам нужно уменьшить только месяц на 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);
});