博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
年龄计算, 发布时间计算 等等 对时间戳的操作
阅读量:6704 次
发布时间:2019-06-25

本文共 2562 字,大约阅读时间需要 8 分钟。

//时间戳转换时间 function toDate(number){
  var n=number; //注释 10位的 需要 乘以 1000,如(number * 1000) 13位就不需要
  var date = new Date(n);   var Y = date.getFullYear() + '/';   var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '/';var D = date.getDate()<10 ? '0'+date.getDate() : date.getDate();   return (Y+M+D)
    //var h = date.getHours() + ':';
      //var m = date.getMinutes() + ':';
    //var s = date.getSeconds();
    //return Y+M+D+h+m+s;   时分秒 更具自己需求
} //将日期格式转换成时间戳:
  var 
date = 
new 
Date(
'2014-04-23 18:55:49:123'
);
    
// 有三种方式获取
    
var 
time1 = date.getTime();
    
var 
time2 = date.valueOf();
    
var 
time3 = Date.parse(date);
    
console.log(time1);
//1398250549123
    
console.log(time2);
//1398250549123
    
console.log(time3);
//1398250549000
 

  以上三种获取方式的区别:

  第一、第二种:会精确到毫秒

  第三种:只能精确到秒,毫秒用000替代

  以上三个输出结果可观察其区别

  注意:获取到的时间戳除以1000就可获得Unix时间戳,就可传值给后台得到。

======================================================================= 年龄计算: 假设出身年月 let old = '1993-10-10'         let oldage = old.substr(0, 4); //截取字符串从第0位开始截取4位   1993
获取当前时间戳:let new = Date.parse(new Date()) 用上面的函数toDate转化: 时间戳转 日期: let newage = toDate(new)    //2019
let age = newage - oldage  // 26= ===================================================== 发布多久  的demo:   刚刚,  一小时前,  一个月前  等等

function getDateDiff(dateTimeStamp) {

var result;
var minute = 1000 * 60;
var hour = minute * 60;
var day = hour * 24;
var halfamonth = day * 15;
var month = day * 30;
var now = new Date();//有些特殊 不能使用 new Date()
var diffValue = now - dateTimeStamp;
if (diffValue < 0) { return; }
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;
};
---------------------

 

// 截取 空格前内容
function getCaption(obj) {
let index = obj.indexOf(" ");
obj = obj.substring(0, index)
return obj;
}
 
注释  res.data.msg.gmtModified 后台给我的   '2019-10-10 10:10:00'
 
截取之后    '2019-10-10'  

案例:::::
//计算发布时间 (刚刚 几小时前 等等)
let time = getCaption('2019-09-09 00:00:00') //处理时间 不然 ios显示不了NaN (坑!!)     //'2019-09-09'
let time_two = (new Date(time)).getTime(); //日期转化为时间戳   // 13位     1500213180111....
 
然后调用函数:
console.log(getDateDiff(time_two)) // 2周前
效果图: 谢谢!!!!

 

转载于:https://www.cnblogs.com/520BigBear/p/10578320.html

你可能感兴趣的文章
HTML第二讲 排版和标签
查看>>
string
查看>>
python学习笔记(1)——简单程序判断数字字符串
查看>>
***“不可使用 – 找不到设备”错误解决方法
查看>>
WUBI安装UBUNTU,优化 swap 交换分区及调整swap大小
查看>>
python __dict__
查看>>
运维自动化之puppet类(4)
查看>>
DOS创建/删除/描述 windows服务
查看>>
MySQL蠕虫复制
查看>>
kafka数据持久化
查看>>
我的友情链接
查看>>
MySQL下载与安装
查看>>
关于泛型
查看>>
我的友情链接
查看>>
学习相关网址
查看>>
流程管理在企业管理中的影响力
查看>>
LAMP 马哥教程
查看>>
[机器学习10.1-2] K-均值聚类算法对未标注数据分组
查看>>
nginx相同域名下不同路径的转发
查看>>
Scala深入浅出实战经典《第89讲:Scala中使用For表达式实现内幕思考》笔记
查看>>