Date

2017-03-22  本文已影响0人  mianmiani

写一个函数getChIntv,获取从当前时间到指定日期的间隔时间

function getChIntv(date){
  var endDate = new Date("2017-05-01");
  var starDate = new Date(date);
  var time = endDate - starDate ;
  var day = parseInt(time/86400000);
  var hour = parseInt((time%86400000)/3600000);
  var minute =parseInt(((time%86400000)%3600000)/60000);
  var second = parseInt((((time%86400000)%3600000)%60000)%1000);
  var chTime = '距2017年劳动节还有'+day+'天'+hour+'小时'+minute+'分'+second+'秒';
  return chTime;
}
var str = getChIntv("2017-03-22");
console.log(str);  // 距2017年劳动节还有40天0小时0分0秒

把hh-mm-dd格式数字日期改成中文日期

function getChsDate(date){
  var dict = '零,一,二,三,四,五,六,七,八,九,十,十一,十二,十三,十四,十五,十六,十七,十八,十九,二十,二十一,二十二,二十三,二十四,二十五,二十六,二十七,二十八,二十九,三十,三十一'
  dict = dict.split(",");
  date = date.split("-");
  var year = dict[date[0][0]]+dict[date[0][1]]+dict[date[0][2]]+dict[date[0][3]];
  var month = dict[parseInt(date[1])];
  var day = dict[parseInt([date[2]])];
  return year+"年"+month+"月"+day+"日";
}

var str = getChsDate('2015-01-08');
console.log(str);  // 二零一五年一月八日

写一个函数,参数为时间对象毫秒数的字符串格式,返回值为字符串。假设参数为时间对象毫秒数t,根据t的时间分别返回如下字符串:

刚刚( t 距当前时间不到1分钟时间间隔)
3分钟前 (t距当前时间大于等于1分钟,小于1小时)
8小时前 (t 距离当前时间大于等于1小时,小于24小时)
3天前 (t 距离当前时间大于等于24小时,小于30天)
2个月前 (t 距离当前时间大于等于30天小于12个月)
8年前 (t 距离当前时间大于等于12个月)

function friendlyDate(time){
  var now = new Date();
  var subTime = now - time;
  if(subTime < 60000){
    return "刚刚";
  }else if(subTime < 3600000){
    return "3分钟前";
  }else if(subTime < 86400000){
    return "8小时前";
  }else if(subTime < 2592000000){
    return "3天前";
  }else if(subTime < 31104000000){
    return "2个月前";
  }else{
    return "8年前";
  }
}
var str = friendlyDate( '14842866994220' ) //  刚刚
var str2 = friendlyDate('1483941245793') //2个月前
上一篇 下一篇

猜你喜欢

热点阅读