坚果大叔 坚果大叔
  • 首页
  • 闲言碎语
  • 技术
  • 生活
  • 记录
  • 朋友
  • 热点新闻
  • 常用代码
  • 工具箱
  • 关于
首页 › 分享 › Js时间小方法

Js时间小方法

坚果大叔
2024-01-29 16:40:06分享阅读 2,156
const formatPast = (date, type = "default", zeroFillFlag = true) => {
    const getTimeDifference = (current, past) => Math.floor((current - past) / 1000);
    const formatDate = (date, separator = "", zeroFill = true) => {
        const year = date.getFullYear();
        const month = zeroFill ? String(date.getMonth() + 1).padStart(2, "0") : date.getMonth() + 1;
        const day = zeroFill ? String(date.getDate()).padStart(2, "0") : date.getDate();
        return ${year}${separator}${month}${separator}${day};
    };
    const timeDifference = getTimeDifference(new Date(), new Date(date));
    if (timeDifference < 10) {
        return "刚刚";
    } else if (timeDifference < 60) {
        return ${timeDifference}秒前;
    } else if (timeDifference < 3600) {
        return ${Math.floor(timeDifference / 60)}分钟前;
    } else if (timeDifference < 86400) {
        return ${Math.floor(timeDifference / 3600)}小时前;
    } else if (timeDifference >= 86400 && type === "default") {
        const daysDifference = Math.floor(timeDifference / 86400);
        if (daysDifference >= 365) {
            return ${Math.floor(daysDifference / 365)}年前;
        } else if (daysDifference >= 30) {
            return ${Math.floor(daysDifference / 30)}个月前;
        } else {
            return ${daysDifference}天前;
        }
    } else {
        const formattedDate = formatDate(new Date(date), type === "年月日" ? "年月日" : type);
        return zeroFillFlag ? formattedDate : formattedDate.replace(/^[0]+/g, "");
    }
};
console.log(formatPast("2024-1-1 11:11:11")); // 3天前
console.log(formatPast("2023-11-1 11:11:11")); // 2个月前
console.log(formatPast("2015-07-10 21:32:01")); // 8年前
console.log(formatPast("2023-02-01 09:32:01", "-", false)); // 2023-2-1
console.log(formatPast("2023.12.8 19:32:01", "/")); // 2023/12/08
console.log(formatPast("2023.12.8 19:32:01", ".")); // 2023.12.08
console.log(formatPast("2023/5/10 11:32:01", "年月日")); // 2023年05月10日
console.log(formatPast("2023/6/25 11:32:01", "月日", false)); // 6月25日
console.log(formatPast("2023/8/08 11:32:01", "年")); // 2023年
赞赏 赞(1)
记一次网站莫名其妙的问题。
上一篇
上海野生动物园~
下一篇
在小程序中查看
搜你想看的
聚合文章
ES6入门之Set 和 Map
uni 小程序 vendor 体积过大。
JS批量下载网页中的图片!
iphone 利用 Scriptable 添加网上国网电费小组件
闲言碎语
Memos
PC微信多开和防撤回~
2025-02-25 20:51:26
1,775 0 0
一些装机单
2023-12-11 10:57:02
4,437 2
使用 Clash 加速同一局域网下的其他设备
2023-10-31 20:19:24
5,095,275 7
一键解决VsCode官网下载慢的问题
2023-10-11 20:26:25
2,151 2
1
  • 1
博主

一位佛系的前端开发者,略通摄影,乐于尝试新事物,热衷于美食。

友链
故事胶片
公众号
坚果大叔 执行上下文 卖坚果的怪叔叔 Dacking
Copyright © 2017-2025 坚果大叔

开往-友链接力

萌ICP备20230818号

苏ICP备18048410号-3
  • 首页
  • 闲言碎语
  • 技术
  • 生活
  • 记录
  • 朋友
  • 热点新闻
  • 常用代码
  • 工具箱
  • 关于
# CSS # # JavaScript # # vue # # 微信 # # 生活 #
坚果大叔
317
文章
125
评论
365
喜欢