在这篇文章中,我们将带领您了解timeago.js自动将时间戳的全貌,包括js时间戳代码的相关情况。同时,我们还将为您介绍有关ASP.NET时间戳(TimeStamp)与时间(DateTime)的互相
在这篇文章中,我们将带领您了解timeago.js自动将时间戳的全貌,包括js时间戳代码的相关情况。同时,我们还将为您介绍有关ASP.NET 时间戳(TimeStamp)与时间(DateTime)的互相转换、C# 时间戳(TimeStamp)与时间(DateTime)的互相转换、datetime和time的时间戳用法、go ---时间戳和Time类型的相互转化的知识,以帮助您更好地理解这个主题。
本文目录一览:- timeago.js自动将时间戳(js时间戳代码)
- ASP.NET 时间戳(TimeStamp)与时间(DateTime)的互相转换
- C# 时间戳(TimeStamp)与时间(DateTime)的互相转换
- datetime和time的时间戳用法
- go ---时间戳和Time类型的相互转化
timeago.js自动将时间戳(js时间戳代码)
首先需要载入jQuery库和timeago.js
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.timeago.js"></script>
接着我们在页面中加入以下代码:
<abbr class="timeago" title="2012-11-28T11:17:00Z"></abbr>
我们给abbr元素设置class为timeago,设置title为标准的ISO 8601时间格式,你也可以使用html5标签time:
<time class="timeago" datetime="2012-12-10T02:20:50Z"></time>
jQuery
使用jQuery调用timeago(),运行页面即可看到效果。
$(function(){
$(".timeago").timeago();
});
以下方法也可以调用timeago():
$(function(){
jQuery.timeago(new Date()); //=> "约1分钟前"
jQuery.timeago("2012-12-09"); //=> "1天前"
jQuery.timeago(jQuery("abbr#some_id")); //=> "1年前" // [title="2011-11-20"]
});
timeago.js还支持处理将来的时间,如“3天后”,只需将以下参数设置为true。
jQuery.timeago.settings.allowFuture = true;
补充说明
timeago.js在标准的UTC时间模式下运行,对于我们处在东八区(+08:00),可以在加载时间时减去8小时,或者在时间格式中使用+08:00来显示准确的北京时间。
举个栗子,假设要处理的是北京时间2012-12-10 18:02:45,那么可以通过以下方式来获取准确的北京时间。
<!--先减去8小时-->
<abbr class="timeago" title="2012-12-10T10:02:45Z"></abbr>
<!--在时间后+08:00-->
<abbr class="timeago" title="2012-12-10T18:02:45Z+08:00"></abbr>
ASP.NET 时间戳(TimeStamp)与时间(DateTime)的互相转换
转自于:https://www.cnblogs.com/smallshu/p/9264451.html
什么是时间戳:时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。
时间戳在线转换网址:https://tool.lu/timestamp,时间戳的转换网址有很多,经常用的还有站长工具。
下附代码,在控制台中粘贴在启动类即可使用,需引用(using System)命名空间 ;
/// <summary>
/// 取时间戳,高并发情况下会有重复。想要解决这问题请使用sleep线程睡眠1毫秒。
/// </summary>
/// <param name="AccurateToMilliseconds">精确到毫秒</param>
/// <returns>返回一个长整数时间戳</returns>
public static long GetTimeStamp(bool AccurateToMilliseconds = false)
{
if (AccurateToMilliseconds)
{
// 使用当前时间计时周期数(636662920472315179)减去1970年01月01日计时周期数(621355968000000000)除去(删掉)后面4位计数(后四位计时单位小于毫秒,快到不要不要)再取整(去小数点)。
//备注:DateTime.Now.ToUniversalTime不能缩写成DateTime.Now.Ticks,会有好几个小时的误差。
//621355968000000000计算方法 long ticks = (new DateTime(1970, 1, 1, 8, 0, 0)).ToUniversalTime().Ticks;
return (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000;
}
else
{
//上面是精确到毫秒,需要在最后除去(10000),这里只精确到秒,只要在10000后面加三个0即可(1秒等于1000毫米)。
return (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000;
}
}
/// <summary>
/// 时间戳反转为时间,有很多中翻转方法,但是,请不要使用过字符串(string)进行操作,大家都知道字符串会很慢!
/// </summary>
/// <param name="TimeStamp">时间戳</param>
/// <param name="AccurateToMilliseconds">是否精确到毫秒</param>
/// <returns>返回一个日期时间</returns>
public static DateTime GetTime(long TimeStamp, bool AccurateToMilliseconds = false)
{
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
if (AccurateToMilliseconds)
{
return startTime.AddTicks(TimeStamp * 10000);
}
else
{
return startTime.AddTicks(TimeStamp * 10000000);
}
}
C# 时间戳(TimeStamp)与时间(DateTime)的互相转换
什么是时间戳:时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。
时间戳在线转换网址:https://tool.lu/timestamp,时间戳的转换网址有很多,经常用的还有站长工具。
下附代码,在控制台中粘贴在启动类即可使用,需引用(using System)命名空间 ;
/// <summary>
/// 取时间戳,高并发情况下会有重复。想要解决这问题请使用sleep线程睡眠1毫秒。
/// </summary>
/// <param name="AccurateToMilliseconds">精确到毫秒</param>
/// <returns>返回一个长整数时间戳</returns>
public static long GetTimeStamp(bool AccurateToMilliseconds = false)
{
if (AccurateToMilliseconds)
{
// 使用当前时间计时周期数(636662920472315179)减去1970年01月01日计时周期数(621355968000000000)除去(删掉)后面4位计数(后四位计时单位小于毫秒,快到不要不要)再取整(去小数点)。
//备注:DateTime.Now.ToUniversalTime不能缩写成DateTime.Now.Ticks,会有好几个小时的误差。
//621355968000000000计算方法 long ticks = (new DateTime(1970, 1, 1, 8, 0, 0)).ToUniversalTime().Ticks;
return (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000;
}
else
{
//上面是精确到毫秒,需要在最后除去(10000),这里只精确到秒,只要在10000后面加三个0即可(1秒等于1000毫米)。
return (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000;
}
}
/// <summary>
/// 时间戳反转为时间,有很多中翻转方法,但是,请不要使用过字符串(string)进行操作,大家都知道字符串会很慢!
/// </summary>
/// <param name="TimeStamp">时间戳</param>
/// <param name="AccurateToMilliseconds">是否精确到毫秒</param>
/// <returns>返回一个日期时间</returns>
public static DateTime GetTime(long TimeStamp, bool AccurateToMilliseconds = false)
{
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
if (AccurateToMilliseconds)
{
return startTime.AddTicks(TimeStamp * 10000);
}
else
{
return startTime.AddTicks(TimeStamp * 10000000);
}
}
datetime和time的时间戳用法
from datetime import datetime
print(datetime.now()) 本地时间 print(datetime.utcnow()) 国际时间
time
#13位或10位时间戳转正常时间。
import time
def timestamp_to_normal_time(timestamp):
timestamp=str(timestamp)
if len(timestamp)==13:
timestamp_10=int(timestamp)/1000
elif len(timestamp)==10:
timestamp_10=int(timestamp)
else:
return None
time_array=time.localtime(timestamp_10)
normal_time = time.strftime("%Y-%m-%d %H:%M:%S", time_array)
return normal_time
datetime
import datetime
def timestamp_to_normal_time(timestamp):
timestamp=str(timestamp)
if len(timestamp)==13:
timestamp_10=int(timestamp)/1000
elif len(timestamp)==10:
timestamp_10=int(timestamp)
else:
return None
time_array=datetime.datetime.fromtimestamp(timestamp_10)
normal_time = time.strftime("%Y-%m-%d %H:%M:%S", time_array)
return normal_time
获取时间戳
#10位,秒级
import time
t=int(round(time.time()))
print(t)
>>> 1558769924
#13位,毫秒级,round()函数是四舍五入。
t13=round(time.time()*1000)
print(t13)
>>>1558769647825
#计算时间差
def cal_difftime(date1, date2):
if is_date(date1) and is_date(date2):
date3=datetime.strptime(date1,"%Y-%m-%d %H:%M:%S") # 字符串转换为datetime类型
date4=datetime.strptime(date2,"%Y-%m-%d %H:%M:%S") # 字符串转换为datetime类型
times = str(date4 - date3).split('':'')
difftime = times[0]+''时''+times[1]+''分''+times[2]+''秒''
return difftime
#判断日期是否为合法输入,年月日的格式需要与上面对应,正确返回True,错误返回False,注意大小写。
def is_date(date):
try:
datetime.strptime(date,"%Y-%m-%d %H:%M:%S")
return True
except:
return False
go ---时间戳和Time类型的相互转化
package main
import (
"time"
"fmt"
)
func main() {
//Time类型.Unix 是将Time类型转为时间戳
timestamp := time.Now().Unix()//time.Now()是当前时间(Time类型)
fmt.Println("now",timestamp)
//time.Unix 是time包里的函数,将时间戳转为Time类型
fmt.Println(time.Unix(timestamp, 0))
}
//输出:
//now 1550377621
//2019-02-17 12:27:01 +0800 CST
时间戳:
- 十位:秒级别
- 十三位:毫秒
- 十九位:纳秒
关于timeago.js自动将时间戳和js时间戳代码的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于ASP.NET 时间戳(TimeStamp)与时间(DateTime)的互相转换、C# 时间戳(TimeStamp)与时间(DateTime)的互相转换、datetime和time的时间戳用法、go ---时间戳和Time类型的相互转化等相关知识的信息别忘了在本站进行查找喔。
本文标签: