const date = new Date();
const n = date.getDay();
console.log(n);
Если текущий день - воскресение, то n
равно 7
, а должно быть 0
.
Почему так?
const date = new Date();
const n = date.getDay();
console.log(n);
Если текущий день - воскресение, то n
равно 7
, а должно быть 0
.
Почему так?
А как день устанавливается? Что в date
?
В Date
можно дату передать.
Если ничего не передавать в конструктор - получает текущую дату-время.
не актуально.
я ошибся
Ну так сейчас среда )
На компе дату менять что ли?
Надо смотреть какая дата получилась в date
для начала.
Да дело в том, что метод getDay() не может 7 вернуть!
Метод getDay() возвращает день недели для указанной даты по местному времени, где 0 означает воскресенье.
Return value
An integer number, between 0 and 6, corresponding to the day of the week for the given date, according to local time: 0 for Sunday, 1 for Monday, 2 for Tuesday, and so on.
зачем?
достаточно в конструкторе нужную дату подставить.
например,
const date = new Date('2023-02-26T14:00:00');
Это я уже слышал. Но у меня может
значит, то, где Вы запускаете свой код - это не JS.
Или Вы можете дать ссылку, где наблюдается данное поведение?
Ну да, но у меня 0 и есть, а в коде из первого поста вообще не ноль должен быть, поэтому надо понять как именно воспроизводилось.
Если и правда 7, то проверить в другом браузере, и если там ок, то погуглить подобный баг в предыдущем браузере.
Задали домашку: создать массив строк с днями недели. Выходные вывести жирным. Текущий день - курсивом (если получится).
Я, весь такой радостный, создаю массив ["Понедельник", ...., "Воскресение"]
. И перебираю его от 0 до 6, ничего не подозревая. Проверяю - работает. Перевожу дату на воскресение, проверяю - работает. Выдаёт: воскресение - 6 - сегодня. Ну это я от getDay
единицу отнял, чтобы с индексами совпадало. Всё это запускаю в VS Code
через live server
.
Потом читаю чатик и вижу, что у людей траблы. Интересуюсь почему, и обнаруживается, что у всех воскресение это 0, а у меня 7
Даже с одним человеком в личке переписывался и специально перепроверил, точно ли у меня выдаёт 7. Так что, ошибке с моей стороны взяться просто негде 3 строчки кода
А вот сейчас, перед тем как это написать, ещё раз перевёл дату на воскресение и оно выдаёт… 0. товарищи!
Это как вообще понимать?