Как изменить формат даты в JavaScript

Возможный дубликат:
Форматирование даты в javascript

У меня есть это:

HTML

Start Date:  <input type="date" id="startDate" name="startDate" ></p>

JavaScript

var  mydate = new Date(form.startDate.value);

После этого mydate становится

"05/05/2010"

Теперь я хочу изменить этот формат на

May 2010

Есть ли способ сделать это в JavaScript?

Ответ 1

Вы можете, конечно, отформатировать дату самостоятельно.

var mydate = new Date(form.startDate.value);
var month = ["January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"][mydate.getMonth()];
var str = month + ' ' + mydate.getFullYear();

Вы также можете использовать внешнюю библиотеку, такую как DateJS.

Здесь пример DateJS:

<script src="http://www.datejs.com/build/date.js" type="text/javascript"></script>
<script>
   var mydate = new Date(form.startDate.value);
   var str = mydate.toString("MMMM yyyy");
   window.alert(str);
</script>

Ответ 2

Используя библиотеку Datejs, это может быть просто:

Date.parse("05/05/2010").toString("MMMM yyyy");
//          parse date             convert to
//                                 string with
//                                 custom format

Ответ 3

var month = mydate.getMonth(); // month (in integer 0-11)
var year = mydate.getFullYear(); // year

Тогда вам понадобится всего несколько месяцев:

var months = ['Jan', 'Feb', 'Mar', ...];

И затем, чтобы показать это:

alert(months[month] + "  " + year);

Ответ 4

Пытаться -

var monthNames = [ "January", "February", "March", "April", "May", "June",
    "July", "August", "September", "October", "November", "December" ];

var newDate = new Date(form.startDate.value);
var formattedDate = monthNames[newDate.getMonth()] + ' ' + newDate.getFullYear();

Ответ 5

Используйте свой объект mydate и вызовите getMonth() и getFullYear()

См. Это для получения дополнительной информации: http://www.w3schools.com/jsref/jsref_obj_date.asp