jQuery格式化时间
jQuery Format Time
我有一个jQuery脚本,它接收参数中以毫秒为单位的字符串,如下所示:
params.tweetDate='77771564221';
我需要做的是创建一个jQuery函数,它将能够在美国时间格式化这个毫秒字符串,比如10.00 AM
或10.00 PM
。
有没有一个jQuery函数能够做到这一点?
请帮忙。
感谢
纯javascript中有Date对象,不需要jQuery。http://www.javascriptkit.com/jsref/date.shtml
示例:
var time = new Date(params.tweetDate),
h = time.getHours(), // 0-24 format
m = time.getMinutes();
// next just convert to AM/PM format (check if h > 12)
- JavaScript自己的
Date
对象,使用getHours()
和getMinutes()
函数,自己处理AM/PM事务(例如,hours>=12是PM),如果minutes小于10,则用前导0填充minutes,等等。另外请注意,如果hours是0,则您希望将其设为12(因为使用AM/PM样式时,您将午夜写成"12:00 AM",而不是"0:00 AM") - DateJS,一个做大量日期工作的附加库(尽管遗憾的是它没有得到积极维护)
- 来自John Resig(jQuery的创建者)的PrettyDate
要使用其中的任何一个,首先必须将"毫秒"值转换为Date
对象。如果它真的是一个"毫秒"值,那么首先通过parseInt(str, 10)
将字符串解析为一个数字,然后使用new Date(num)
创建代表该时间点的Date
对象。因此:
var dt = new Date (parseInt(params.tweetDate, 10));
然而,您所引用的值,即毫秒值,似乎有点奇怪—通常情况下,距离JavaScript使用的大纪元(1970年1月1日)只有几毫秒的时间,但new Date(parseInt("77771564221", 10))
给我们的日期是1972年6月,早在Twitter之前。自大纪元以来也不是秒(一种相当常见的Unix约定),因为new Date(parseInt("77771564221", 10) * 1000)
给了我们4434年6月的日期。因此,首先要找出的是该值实际代表的值,从到的毫秒数。然后将其调整为自大纪元以来的毫秒数,并将其输入new Date()
以获取对象。
这里有一个函数:
function timeFormatter(dateTime){
var date = new Date(dateTime);
if (date.getHours()>=12){
var hour = parseInt(date.getHours()) - 12;
var amPm = "PM";
} else {
var hour = date.getHours();
var amPm = "AM";
}
var time = hour + ":" + date.getMinutes() + " " + amPm;
console.log(time);
return time;
}
您可以用任何方法调用该函数,如:
var time = timeFormatter(parseInt("2345678998765"));
看看timeago:这是一个用于此目的的jquery插件。
使用T.J.的解决方案,这就是我最终得到的结果。
var date = new Date(parseInt("77771564221", 10));
var result = new Array();
result[0] = $.datepicker.formatDate('DD, M, d, yy', date);
result[1] = ' ';
if (date.getHours() > 12) {
result[2] = date.getHours() - 12;
} else if (date.getHours() == 0 ) {
result[2] = "12";
} else {
result[2] = date.getHours();
}
result[3] = ":"
result[4] = date.getMinutes();
if (date.getHours() > 12) {
result[5] = " pm";
} else {
result[5] = " am";
}
console.log(result.join(''));
相关文章:
- 如何将日期拆分为格式化的日期和时间
- 格式化momentjs日期时间
- 生成并格式化当前日期和时间
- 如何在时间标签和相同的类中以UTC格式重新格式化ISO 8601时间戳,并通过JavaScript根据用户区域设置和时区
- momentjs 显示本地时间和自动格式化字符串
- 使用JavaScript进行巧妙的时间格式化
- 如何在 Jquery 或 JavaScript 中验证 24 小时格式化的时间
- 从服务器获取并传递给浏览器以在 Javascript 中格式化的日期时间格式
- Angularjs:带日期助手的格式化UTC时间的时间戳
- 使用ECMAScript国际化API格式化日期和时间
- 如何在 php 中以 CRON 格式格式化日期和时间
- 从日期时间格式化时间
- JavaScript 格式化时间 24 小时格式为 12 小时
- 显示格式化的已用时间
- 来自 Date() 对象的 JavaScript 格式化时间
- 使用日期时间选择器插件格式化日期
- jQuery格式化时间以删除秒并添加AM或PM
- 如何格式化setInterval方法JavaScript的运行时间
- 在javascript中使用时间格式化日期
- Fullcalendar:以相同的时间格式化事件