我有一个日期选择器,其格式为31-Dec-2014
,因为这是我们工具中每个人都熟悉的格式。
我正在尝试将其转换为mm/dd/yyyy
格式的JavaScript日期对象,但我遇到了一些麻烦。
我尝试了一些像var startDate = new Date('31-Dec-2014');
这样简单但却输出无效日期的内容。
我知道有像date.js
和moment.js
这样的插件,但我觉得如果没有它就会很简单。
有什么想法吗?
答案 0 :(得分:1)
使用Date的3个参数版本,并将月份代码翻译为正确的数字,例如
function myDate(input) {
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
input = input.split('-');
input[1] = months.indexOf(input[1]);
return new Date(+input[2], +input[1], +input[0]);
}
myDate('31-Dec-2014'); // Wed Dec 31 2014 00:00:00 GMT+0000 (GMT Standard Time)
请记住所有日期都是在客户的本地时区生成的,您可能需要使用 UTC 方法。