如何在 JavaScript 中更改日期格式

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/8040771/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-24 04:29:29  来源:igfitidea点击:

How to change date format in JavaScript

javascriptdatetime

提问by junaidp

Possible Duplicate:
Formatting a date in javascript

可能的重复:
在 javascript 中格式化日期

I have this:

我有这个:

HTML

HTML

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

JavaScript

JavaScript

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

After that mydate becomes

在那之后 mydate 变成

"05/05/2010"

Now, I want to change this format to

现在,我想将此格式更改为

May 2010

Is there a way of doing it in JavaScript?

有没有办法在 JavaScript 中做到这一点?

回答by Mike Christensen

You can certainly format the date yourself..

你当然可以自己格式化日期..

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();

You can also use an external library, such as DateJS.

您还可以使用外部库,例如DateJS

Here's a DateJS example:

这是一个 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>

回答by pimvdb

Using the Datejslibrary, this can be as easy as:

使用Datejs库,这可以很简单:

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

回答by Naftali aka Neal

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

Then all you would need to have is an array of months:

那么你所需要的只是一系列月份:

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

And then to show it:

然后显示它:

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

回答by ipr101

Try -

尝试 -

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();

回答by rogerlsmith

Use your mydate object and call getMonth() and getFullYear()

使用您的 mydate 对象并调用 getMonth() 和 getFullYear()

See this for more info: http://www.w3schools.com/jsref/jsref_obj_date.asp

有关更多信息,请参阅:http: //www.w3schools.com/jsref/jsref_obj_date.asp