在jQuery中格式化日期时间 [英] Format date time in jQuery
本文介绍了在jQuery中格式化日期时间的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
var date = "2014-07-12 10:54:11";
我如何以2014年7月12日上午10:51的格式显示此信息?
是否有任何函数,如
How can I show this in format 12 Jul, 2014 at 10:51 am ? Is there any function like
var newDate = formatNewDate(date);
我可以从中获取日期时间为2014年7月12日上午10:51 ?
From which I can able to get the date time as "12 Jul, 2014 at 10:51 am" ?
推荐答案
var d = new Date();
var month = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
var date = d.getDate() + " " + month[d.getMonth()] + ", " + d.getFullYear();
var time = d.toLocaleTimeString().toLowerCase();
console.log(date + " at " + time);
// 6 Jul, 2014 at 1:35:35 pm
或者你可以拥有函数
var my_date_format = function(d){
var month = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
var date = d.getDate() + " " + month[d.getMonth()] + ", " + d.getFullYear();
var time = d.toLocaleTimeString().toLowerCase();
return (date + " at " + time);
}(new Date());
用法:
console.log(my_date_format);
第二个解决方案
var my_date_format = function(input){
var d = new Date(Date.parse(input.replace(/-/g, "/")));
var month = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
var date = d.getDate() + " " + month[d.getMonth()] + ", " + d.getFullYear();
var time = d.toLocaleTimeString().toLowerCase().replace(/([\d]+:[\d]+):[\d]+(\s\w+)/g, "$1$2");
return (date + " " + time);
};
console.log(my_date_format("2014-07-12 11:28:13"));
// output 6 Jul, 2014 11:28 am
检查 jsBin
额外注意事项:
并非所有浏览器都支持某些日期格式!
Extra note:
Some of date formats aren't supported in all browsers!
// "2014/07/12" -> yyyy/mm/dd [IE, FF, Chrome]
// "07-12-2014" -> mm-dd-yyyy [IE, Chrome]
// "July 12, 2014"; -> mmmm dd, yyyy [IE, FF]
// "Jul 12, 2014"; -> mmm dd, yyyy [IE, FF]
这篇关于在jQuery中格式化日期时间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文