zoukankan      html  css  js  c++  java
  • JS代码片段:一个日期离现在多久了

    var dateDiff = function(hisTime,nowTime){
    if(!arguments.length) return '';
    var arg = arguments,
    now =arg[1]?arg[1]:new Date().getTime(),
    diffValue = now - arg[0].getTime(),
    result={
    isToday:false
    },
    minute = 1000 * 60,
    hour = minute * 60,
    day = hour * 24,
    halfamonth = day * 15,
    month = day * 30,
    year = month * 12,

    _year = diffValue/year,
    _month =diffValue/month,
    _week =diffValue/(7*day),
    _day =diffValue/day,
    _hour =diffValue/hour,
    _min =diffValue/minute;

    if(new Date().toDateString()==hisTime.toDateString()){
    result.isToday=true;
    }
    if(_year>=1) result.text=parseInt(_year) + "年前";
    else if(_month>=1) result.text=parseInt(_month) + "个月前";
    else if(_week>=1) result.text=parseInt(_week) + "周前";
    else if(_day>=1) result.text=parseInt(_day) +"天前";
    else if(_hour>=1) result.text=parseInt(_hour) +"个小时前";
    else if(_min>=1) result.text=parseInt(_min) +"分钟前";
    else result.text="刚刚";
    return result;
    }

    //此方法来源于 https://github.com/vuejs/vue-hackernews/blob/gh-pages/src/filters/index.js
    function fromNow (dateStr) {
    const between = Date.now() / 1000 - Number(new Date(dateStr.replace(/-/g,'/')).getTime()) / 1000;
    if (between < 3600) {
    return (~~(between / 60)+'分钟前');
    } else if (between < 86400) {
    return (~~(between / 3600)+'小时前');
    } else {
    return (~~(between / 86400)+'天前');
    }
    }

    function isToday(dateStr){
    return (new Date().toDateString()==(new Date(dateStr.replace(/-/g,'/')).toDateString()));
    }
  • 相关阅读:
    对于 redux 的一些理解-1.基础
    css 优化
    HTML 理解标签
    css 理解盒模型
    json2.js JSON解析程序
    DOM 核心
    居中
    Director.js
    jquery-2.0.3 源码分析 整体架构
    Zookeeper安装
  • 原文地址:https://www.cnblogs.com/yanyd/p/5249695.html
Copyright © 2011-2022 走看看