Удалить время из формата времени по Гринвичу
Я получаю дату в формате GMT, пятница, 18 октября 2013 г., 11:38:23 GMT. Проблема в том, что время портит график, который я использую.
Как я могу удалить все, кроме фактической даты?
6 ответов
Как это:
var dateString = 'Mon Jan 12 00:00:00 GMT 2015';
dateString = new Date(dateString).toUTCString();
dateString = dateString.split(' ').slice(0, 4).join(' ');
console.log(dateString);
Если вы хотите продолжать использовать Date, а не String, вы можете сделать это:
var d=new Date(); //your date object
console.log(new Date(d.setHours(0,0,0,0)));
-PS, вам не нужен новый объект Date, это всего лишь пример на тот случай, если вы хотите зарегистрировать его на консоли.
Я использую этот обходной путь:
// d being your current date with wrong times
new Date(d.getFullYear(), d.getMonth(), d.getDate())
Вы можете использовать Moment.js, библиотеку, которая предоставляет множество вспомогательных функций для проверки, управления, отображения и форматирования даты и времени в JavaScript.
Используя Moment.js lib:
var dateString = new Date('Mon Jan 12 00:00:00 GMT 2015');
moment(dateString).format('YYYY-MM-DD HH:mm');
Или упрощенно:
moment('Mon Jan 12 00:00:00 GMT 2015').format('YYYY-MM-DD HH:mm')
Что ж,
Вот мое решение
let dateString = 'Mon May 25 01:07:00 GMT 2020';
let dateObj = new Date(dateString);
console.log(dateObj.toDateString());
// outputs Mon May 25 2020
См. Его документацию по MDN https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toDateString.
Просто порежь это substring
:
var str = 'Fri, 18 Oct 2013 11:38:23 GMT';
str = str.substring(0,tomorrow.toLocaleString().indexOf(':')-3);
В этом случае вы можете просто манипулировать вашей строкой без использования Date
объект.
var dateTime = 'Fri, 18 Oct 2013 11:38:23 GMT',
date = dateTime.split(' ', 4).join(' ');
document.body.appendChild(document.createTextNode(date));
Вы можете сначала преобразовать дату в строку:
String dateString = String.valueOf (date);
Затем примените подстроку к строке:
dateString.substring (4, 11) + dateString.substring (30);
Вы должны позаботиться о том, чтобы преобразование даты в строку действительно изменило формат даты.