2016-01-07 3 views
-2

Я не программист и просто пытаюсь что-то сделать, поэтому, пожалуйста, извините, если вопрос глуп.Дата, переданная на функцию момента увеличивается на 1 минуту

Я создаю дату, используя функцию даты по умолчанию в javascript. Я думал, что смогу сделать все с этим, а потом понял, что мне придется использовать другие библиотеки, чтобы добиться чего-то легко.

При попытке я заметил это странное поведение.

var d = new Date(); 
var DayinMS = 86400000 * 3; 
var ThisDate = d.getDate(); 
var ThisMonth = d.getMonth(); 
var ThisYear = d.getFullYear(); 
var StartDate = Date.parse(new Date(ThisYear, ThisMonth, ThisDate, 0, 0, 0, 0)); 

Создал переменную даты указанным выше образом, так что у меня есть 0 во временных полях. Я не знаю, есть ли лучший способ сделать то же самое.

Выход StartDate - .

var StarDate = new Date(StartDate).toString("d/MMM/yyyy"); 

Думал, что смогу форматировать дату по методу выше, но нет. Выход StarDate - Чт 07 07 2016 00:00:00 GMT + 0530

Затем немного поработал и решил использовать moment.js.

var newDate = moment(StartDate).format('DD/MM/YYYY HH:MM:SS'); 

И выход newDate является 07/01/2016 00:01:00.

То, что я нахожу странным, является счетчиком минут, увеличивающимся на 1. Я тестировал как на firefox, так и на хром и тот же результат. Вышеприведенный код может быть не очень хорошим, но логически, счетчик минут не должен увеличиваться, или я действительно что-то пропускаю?

Спасибо.

+4

Минута не увеличивается на 1, вы выводите месяц. Строка, переданная в 'формат', чувствительна к регистру,' ММ' - месяц, 'мм' - минуты. –

+0

Просто подумал об этом минуту, проверяя еще кое-что. :) Благодаря. – Aseem

+0

@JamesThorpe Месяцы индексируются 0, так как получается «1» вместо «0»? – Aseem

ответ

0

Использовал «ММ» вместо «мм». Плохое чтение.

Смежные вопросы