Я понимаю, что работа с датами в любой среде может быть довольно запутанной, но я нахожусь в кошмаре с функцией, которая должна быть тривиальной работой.Я хочу по-разному манипулировать некоторыми датами, но получаю ошибки или неверные результаты.
Ниже я сообщаю очень простой пример, сделанный для проверки выполнения;цель здесь - получить дату начала текущего месяца, просто чтобы показать, что происходит:
function DateAdjust() {
var newdate = new Date(); //1: 2018-12-12T21:00:20.099Z
newdate = newdate.setDate(1); //2: 1543698020099
newdate=Date(newdate); //3: Wed Dec 12 2018 21:01:43 GMT+0000 (Ora standard dell’Europa occidentale)
var d = newdate.getDate(); //4: newdate.getDate is not a function
}
4 строки, 3 неожиданных результата (как показывает отладчик Firefox):
1. дата начала не имеет дня недели и часового пояса
2. при установке дня результат преобразуется в миллисекунды (почему?);Я не знаю, правильно ли это.
3. при преобразовании в строку указывается исходная дата, неизмененная (почему?), Но с указанием дня недели и часового пояса
4. при попытке получить значение дня выдается ошибка (почему?)
Мое окружение:
Win 7 32бит SP1
Firefox 63.0.3 (32 бита)
jquery-2.2.4.min.js
Я знаю этивопросы скучные, но надеюсь, что кто-нибудь найдет несколько минут, чтобы очистить мой разум.