JavaScript 日期与月份冲突

标签 javascript

您好,我正在使用以下代码来格式化我的日期字符串

var monthNames = ["Jan", "Feb", "Mar", "Apr", 
                  "May", "Jun", "Jul", "Aug", 
                  "Sep", "Oct", "Nov", "Dec"];
var AddedDate = new Date('04/11/2016 11:36:15');
alert(AddedDate.getDate() + ' ' + monthNames[AddedDate.getMonth()] + '\'' + AddedDate.getYear());

此处输入的日期格式为 DD/MM/YYYY hh:mm:ss 但是,当我 getDate() 时,它给出的日期为 11,而 getmonth() 给出的日期为 4 月。我该如何解决这个问题。请帮忙。 还有一种方法可以让 2016 年的年份为 16。

我得到的当前输出是 11 Apr'116

预期输出为 2016 年 11 月 4 日

最佳答案

如果你想要 dd/mm/year 格式的日期。我去掉时间部分并将字符串拆分为数组并创建一个包含日期、月份和年份的日期

为了缩短年份,我采用了 substr(2,2)

检查片段

var monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];

var dateString = '04/11/2016 11:36:15';

dateString = dateString.split(' ')[0];

var dateParts = dateString.split("/");

var date = dateParts[2];
var month = dateParts[1] - 1;


var dateObject = new Date(date, month, dateParts[0]);


var yearShort = dateObject.getFullYear().toString()
alert(dateObject.getDate() + ' ' + monthNames[dateObject.getMonth()] + '\'' + yearShort);

希望对你有帮助

关于JavaScript 日期与月份冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40780474/

相关文章:

javascript - Emotion CSS 宏有什么作用,我该如何使用它?

javascript - 为 Web Worker 使用不同的 output.libraryTarget

javascript - Canvas.toDataURL() 解决方法?

php - 将 Ck 编辑器放入 innerHTML 以用 Ckeditor 文本区域替换 div 后无法工作

javascript - 使用javascript删除内爆变量的值

javascript - 这太硬编码了吗?

javascript - 更改表单(输入)值而不显示用户

javascript - 我们如何从 Cypress 测试中调用在单独文件中编写的函数?

javascript - 数据表 javascript 在 Chrome、firefox 或 IE 中未触发

javascript - 如何让saveRow函数等待jqGrid中的editRow函数