写一个函数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个月前