2014-10-01 5 views
0

У меня есть дата, которую я хочу преобразовать в строку, но без времени, только часть даты.Как форматировать дату без времени, используя toLocaleTimeString

Мой текущий код:

var date = new Date(2014, 9, 08); //Wed Oct 08 2014 00:00:00 GMT-0500 (Central Daylight Time) 
var options = {weekday: "long", year: "numeric", month: "long", day: "numeric"}; 

console.log(date.toLocaleTimeString("en-US", options)); 
// output: Wednesday, October 8, 2014 12:00:00 AM 
// what I'm looking for: Wednesday, October 8, 2014 

Как я могу изменить параметры, чтобы не показывать время?

+0

можно использовать toDateString(), а также – SoluableNonagon

ответ

2

Juste использование toLocaleDateString вместо toLocaleTimeString и вы должны получить результат вы ожидаете:

var date = new Date('2014', '9', '08'); //Wed Oct 08 2014 00:00:00 GMT-0500 (Central Daylight Time) 
var options = {weekday: "long", year: "numeric", month: "long", day: "numeric"}; 
console.log(date.toLocaleDateString("en-US", options)); 

возвращается: "Wednesday, October 8, 2014"

Я также второй выше плакат и рекомендую использовать moment.js; он легкий и очень гибкий.

0

Если вы удовлетворены разрешением браузера определять формат отображения, вы можете использовать функции toDateString или объекта Date. You будет получить разные результаты в разных браузерах.

В противном случае рассмотрите возможность использования библиотеки, такой как moment.js, чтобы вы могли управлять форматом по своему вкусу. Например:

moment([2014,9,8]).format('dddd, MMMM Do, YYYY') // "Wednesday, October 8, 2014" 
Смежные вопросы