js 获取指定时间差

在新浪微博首页看到每条微博后边显示的时间并不是标准的年-月-日格式,而是经过换算的时间差,如:发表于5分钟前、发表于“2小时前”,比起标准的时间显示格式,貌似更加直观和人性化   ,表示时间范围

//JavaScript函数时间统一为毫米便于计算,也可以都使用秒计算(如果这样的话,1000ms可以不写)

var stampTime = new Date().getTime(); // 获取从1970 -1-1 到至今的时间毫秒数


var minute = 1000 * 60;
var hour = minute * 60;
var day = hour * 24;
var halfamonth = day * 15;
var month = day * 30;
function getDateDiff(dateTimeStamp){
var now = new Date().getTime();
var diffValue = now - dateTimeStamp;
if(diffValue < 0){
 
 //alert("请争取设置时间");
 }
var monthC =diffValue/month;
var weekC =diffValue/(7*day);
var dayC =diffValue/day;
var hourC =diffValue/hour;
var minC =diffValue/minute;
if(monthC>=1){
 result="发表于" + parseInt(monthC) + "个月前";
 }
 else if(weekC>=1){
 result="发表于" + parseInt(weekC) + "周前";
 }
 else if(dayC>=1){
 result="发表于"+ parseInt(dayC) +"天前";
 }
 else if(hourC>=1){
 result="发表于"+ parseInt(hourC) +"个小时前";
 }
 else if(minC>=1){
 result="发表于"+ parseInt(minC) +"分钟前";
 }else
 result="刚刚发表";
return result;

}

//js函数代码:字符串转换为时间戳
function getDateTimeStamp(dateStr){
 return Date.parse(dateStr.replace(/-/gi,"/"));
}


//小提示:

  var s = new Date(日期.getTime());       
        s.getFullYear()+"年";
        s.getMonth()+1)+"月"+s.getDate()+"日";  



》如何进行两个时间比较相差多少 ?

把两个时间分别进行转换到毫秒,用最后时间减去前一个时间 获得的毫秒/要去的时间(毫秒)

(endDate.getTime() - startDate.getTime())/24*60*60*1000;//这样就求出相差多少天


根据毫秒显示当前时间:倒计时

var diffTime = (new Date(2016, 11, 11, 9, 0, 0)) - (new Date());//计算剩余的毫秒数
var dd = Math.floor(diffTime / 1000 / 60 / 60 / 24);//计算剩余的天数
var hh = Math.floor(diffTime / 1000 / 60 / 60 % 24);//计算剩余的小时数
var mm = Math.floor(diffTime / 1000 / 60 % 60);//计算剩余的分钟数
var ss = Math.floor(diffTime / 1000 % 60);//计算剩余的秒数


JavaScript 获取当前时间戳:
第一种方法:

var timestamp =Date.parse(new Date());

结果:1280977330000
第二种方法:

var timestamp =(newDate()).valueOf();

结果:1280977330748

第三种方法:

var timestamp=newDate().getTime();

结果:1280977330748

第一种:获取的时间戳是把毫秒改成000显示,

第二种和第三种是获取了当前毫秒的时间戳。





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值