![](/img/trans.png)
[英]Javascript convert yyyy-mm-dd hh:mm:ss like newDate(“day, month date year hh:mm:ss”)
[英]How can convert YYYY-MM-DD hh mm ss into MonthName, date, year | Hour:Minuts (am/pm) in JavaScript or jQuery
我有日期字符串(2013-03-10 19:43:55)
并希望使用JavaScript或jQuery以此格式(Mar 10, 2013 | 7:43 pm)
进行转换。 我怎样才能做到这一点 ??
扩展@ arun-p-johny解决方案,实现跨浏览器兼容的解决方案
function converter(s) {
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
s = s.replace(/-/g, '/');
var d = new Date(s);
var hour = d.getHours();
return d.getFullYear() + ' ' + months[d.getMonth()] + ' ' + d.getDate() + ' | ' + (hour % 12) + ':' + d.getMinutes() + ' ' + (hour > 11 ? 'pm' : 'am');
}
console.log(converter('2013-03-10 19:43:55'));
尝试类似的东西
function converter(string) {
var d = new Date(string);
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'sep', 'Oct', 'Nov', 'Dec'];
var hour = d.getHours();
return d.getFullYear() + ' ' + months[d.getMonth()] + ' ' + d.getDate() + ' | ' + (hour % 12) + ' ' + d.getMinutes() + ':' + (hour > 11 ? 'pm' : 'am');
}
alert(converter('2013-03-10 19:43:55'))
演示: 小提琴
更新:
RegEx based solution for cross browser compatibility
function converter(string) {
var d = string.split(/[-:\s]/);
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'sep', 'Oct', 'Nov', 'Dec'];
var hour = parseInt(d[3], 10);
return d[0] + ' ' + months[parseInt(d[1], 10) - 1] + ' ' + d[2] + ' | ' + (hour % 12) + ' ' + d[4] + ':' + (hour > 11 ? 'pm' : 'am');
}
alert(converter('2013-03-10 19:43:55'))
演示: 小提琴
Kashif的回答似乎是+1,但是,有一个小问题。
如果要显示的分钟数小于10,那么根据他的功能而不是显示“6:08 PM”它显示“6:8 PM”。 这可以通过添加来解决,
var minutes = d.getMinutes();
if(minutes<10){
minutes = "0"+minutes;
}
完整的工作功能如下,
function dateConverter(s) {
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
s = s.replace(/-/g, '/');
var d = new Date(s);
var hour = d.getHours();
var minutes = d.getMinutes();
//to display the minutes less than 10 with 0 as the suffix
if(minutes<10){
minutes = "0"+minutes;
}
return months[d.getMonth()] + ' ' + d.getDate() + ' , ' + d.getFullYear() + ' | ' + (hour % 12) + ':' + minutes + ' ' + (hour > 11 ? 'pm' : 'am');
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.