正在格式化日期字符串
Reformatting date string
如果输入像"Tue Aug 30 2011 11:47:14 GMT-0300"
,我希望输出像"MMM DD YYYY hh:mm"
。
在JavaScript中实现它的简单方法是什么?
通过JS,您可以尝试将其转换为日期对象,然后提取相关位并使用它们:
var d = new Date ("Tue Aug 30 2011 11:47:14 GMT-0300")
d.getMonth(); // gives you 7, so you need to translate that
可以使用date-js
这样的库来缓解它。正则表达式通过<<p> strong> :/[a-zA-Z]{3} ([a-zA-Z]{3} 'd{2} 'd{4} 'd{2}:'d{2})/
应该可以。
var r = "Tue Aug 30 2011 11:47:14 GMT-0300".match(/^[a-zA-Z]{3} ([a-zA-Z]{3} 'd{2} 'd{4} 'd{2}:'d{2})/);
alert(r[1]); // gives you Aug 30 2011 11:47
检查Date.parse
,它将字符串解析为UNIX时间戳,然后您可以按照自己的喜好格式化它。
如果您不介意使用库,可以使用Datejs。对于日期,您可以这样做:
new Date ("Tue Aug 30 2011 11:47:14 GMT-0300").toString('MMM dd yyyy hh:mm');
函数示例:
function parseDate(d) {
var m_names = new Array("Jan", "Feb", "Mar",
"Apr", "May", "Jun", "Jul", "Aug", "Sep",
"Oct", "Nov", "Dec");
var curr_day = d.getDate();
var curr_hours = d.getHours();
var curr_minutes = d.getMinutes();
if (curr_day < 10) {
curr_day = '0' + curr_day;
}
if (curr_hours < 10) {
curr_hours = '0' + curr_hours;
}
if (curr_minutes < 10) {
curr_minutes = '0' + curr_minutes;
}
return ( m_names[d.getMonth()] + ' ' + curr_day + ' ' + d.getFullYear() + ' ' + curr_hours + ':' + curr_minutes);
}
alert(parseDate(new Date()));
或者查看http://blog.stevenlevithan.com/archives/date-time-format获取更通用的日期格式函数
相关文章:
- 如何在 java 脚本中将字符串日期转换为 GMT
- 如何用字符串日期填充日期选择器表单
- 比较两个 JavaScript 字符串日期
- 解析字符串日期
- 分析具有不同时区的字符串日期
- 在 Javascript 中将字符串日期 YYYY-MM 转换为日期
- pickadate.js-3.5.3 将字符串日期转换为 mysql DATE 的正确格式
- 使用javascript jquery或css格式化字符串日期
- Javascript |字符串日期格式设置为2014年6月4日至2014年06月4日
- 字符串日期到unix时间戳
- *javascript*将字符串日期转换为UTC日期
- 如何拆分字符串(日期),以不同的字符分隔
- 如何格式化JavaScript长字符串日期
- 如何使用 Ajax 控件工具包 (CalendarExtender) 验证字符串日期
- 在javascript中转换字符串日期
- 如何在ASP中转换DateTime形式的字符串日期.净c#
- 将JSON字符串日期转换为JavaScript (Google Apps Script)
- 将javascript的字符串日期时间转换为c#的日期时间
- 在javascript中转换字符串日期到日期时间,如何处理日期格式
- 如何将JSON字符串日期转换为自定义格式日期