把时间转成适合符合日常习惯的格式【js】

假设现在是7月30日12点,我们可以说今天12点,意思也非常明确。

我们习惯说昨天12点,而不习惯说29号12点。

我们习惯说周一12点,而不习惯说28号12点,这样不用翻日历看今天是几号。

so,上代码:

复制代码
var oneDay = 24 * 60 * 60 * 1000;//一天的毫秒数

   String.prototype.paddingLeft0 = function () {
       return this.length === 1 ? '0' + this : this;
   }

 
 

    //解析 像这样的时间 '/Date(1406532408860)/'
    //返回适合现在阅读的时间
   function parseTime(time) {
       var res = '';
       var t = eval('new ' + time.toString().replace(/\//g, ''));
       var M = t.getMonth() + 1+'';
       var d = t.getDate()+'';
       var wd = t.getDay()+'';
       var h = (t.getHours() + '').paddingLeft0();
       var m = (t.getMinutes()+'').paddingLeft0();
       var n = new Date();

       var getDays = function (n, t) {
           var r = 0;
 
           if ((n - t) >= oneDay) {
               if ((n - t) >= oneDay && (n - t) < oneDay * 2) { r = 1; }
               else if ((n - t) >= oneDay * 2 && (n - t) < oneDay * 3) { r = 2; }
               else { r = -1; }//-1表示大于2天
           }
           return r;

       }

      

       var w = ['周日', '周一', '周二', '周三', '周四', '周五', '周六'];
       switch (getDays(n, t)) {
           case 0: res = '<strong>今天</strong> ' + h + ':' + m; break;
           case 1: res = '<strong>昨天</strong> ' + h + ':' + m; break;
           case 2: res = '<strong>'+w[wd]+'</strong> ' + h + ':' + m; break;
           case -1: res = '<strong>' + M + '月' + d + '日</strong> ' + h + ':' + m; break;

           default: break;

       }


      
       return res;
   }
复制代码

then,上图:

posted @   二师弟tl  阅读(229)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示