JavaScript 中处理日期格式化

news/2025/10/19 10:18:43/文章来源:https://www.cnblogs.com/dirgo/p/19148268

在 JavaScript 中处理日期格式化,原生能力确实有限,但现代的 Intl 对象提供了不错的基础支持。对于更复杂或要求高的场景,社区一些优秀的库能让你事半功倍。

下面这个表格整理了主要的日期格式化方案,帮你快速了解:

方案类型 代表库/方法 核心特点 适用场景
原生 JS 方案 Intl.DateTimeFormat 浏览器内置,支持国际化,无需额外依赖 简单的、对包体积敏感的需求
手动拼接 完全控制输出格式,代码灵活 极简单的特定格式,且不愿引入任何工具
第三方库 Day.js 轻量(仅 2kB),API 与 Moment.js 相似 绝大多数项目,平衡功能与体积
date-fns 函数式、模块化,按需引入 模块化项目,追求 tree shaking
Moment.js 功能极其全面,社区资源丰富 遗留项目,或需要处理非常复杂的日期时间

💻 原生 JavaScript 方案

如果需求简单,或者你特别在意包大小,原生能力基本够用。

  1. Intl.DateTimeFormat (推荐)
    这是目前浏览器原生方法里最强大和现代的,尤其擅长处理国际化。

    const date = new Date();
    const formatter = new Intl.DateTimeFormat('zh-CN', {year: 'numeric',month: '2-digit',day: '2-digit',hour: '2-digit',minute: '2-digit',second: '2-digit',hour12: false // 使用24小时制
    });
    console.log(formatter.format(date)); // 输出示例: "2023/10/05 15:24:00"
    
  2. 手动拼接
    这种方式就是直接获取日期的各个部分,然后拼成你想要的字符串。

    function formatDate(date) {const year = date.getFullYear();const month = String(date.getMonth() + 1).padStart(2, '0');const day = String(date.getDate()).padStart(2, '0');const hours = String(date.getHours()).padStart(2, '0');const minutes = String(date.getMinutes()).padStart(2, '0');const seconds = String(date.getSeconds()).padStart(2, '0');return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
    }console.log(formatDate(new Date())); // 输出示例: "2023-10-05 15:24:00"
    

    缺点也很明显:代码相对繁琐,处理12小时制、时区、本地化等会很麻烦。

🧰 第三方库推荐

当原生方法无法满足需求时,下面这些库是更好的选择。

  1. Day.js:现代轻量之选

    • 优势:API 设计友好,体积极小,可以通过插件扩展功能(如时区、相对时间等)。
    • 示例
      import dayjs from 'dayjs';console.log(dayjs().format('YYYY-MM-DD')); // 输出示例:"2025-03-26"
      console.log(dayjs().format('YYYY-MM-DD HH:mm:ss')); // 输出示例:"2025-06-05 10:00:00"
      
  2. date-fns:模块化工具集

    • 优势函数式编程风格,利于 tree shaking,特别适合在模块化打包的项目中使用,可以只引入你用到的方法。
    • 示例
      import { format } from 'date-fns';console.log(format(new Date(), 'yyyy-MM-dd HH:mm:ss')); // 输出示例:"2023-06-05 10:00:00"
      

💎 如何选择?

  • 追求小巧、易上手,应对大部分日常场景:直接选择 Day.js
  • 项目基于模块化构建,且注重代码最优打包:可以考虑 date-fns
  • 处理简单日期显示,且不希望任何外部依赖:使用原生的 Intl.DateTimeFormat
  • 维护老项目,或需要进行极其复杂的日期操作(如大量历史时区转换):才考虑 Moment.js

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/938993.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年在线粘度计厂家推荐排行榜,实验室在线粘度计,工业在线粘度计,高精度在线粘度计公司推荐!

2025年在线粘度计厂家推荐排行榜:实验室、工业及高精度在线粘度计公司推荐随着科技的不断进步,各行各业对在线粘度计的需求日益增长。无论是实验室还是工业生产,高精度的在线粘度计都成为了不可或缺的工具。为了帮助…

2025年10月权威更新:双曲/氟碳/冲孔/阳极氧化/花幕墙/铝单板厂家排行榜前十强推荐与选购指南

在建筑装饰材料品质升级的浪潮中,铝单板厂家的综合实力成为工程质量的核心保障。2025 年市场对厂家的产能规模、技术创新与服务能力提出更高要求,头部企业凭借全链条优势脱颖而出。本榜单基于多维度测评,评选出十大…

找到M3U8直播源的方法

M3U8是一种基于文本的媒体播放列表格式,主要应用于HLS流媒体传输协议,广泛支持视频直播与点播场景。该文件内包含一个或多个媒体片段的网络地址,播放器通过读取这些URL信息即可实现流式加载与连续播放。 寻找M3U8直…

2025年临床样本冷链运输服务商推荐榜单,专业冷链物流,生物样本运输公司精选!

2025年临床样本冷链运输服务商推荐榜单,专业冷链物流,生物样本运输公司精选!随着医疗技术的不断进步和生物医学研究的深入发展,临床样本的冷链物流需求日益增长。高质量的冷链运输服务对于确保样本的完整性和有效性…

2025年网格川字塑料托盘厂家推荐排行榜,耐用抗压,仓储物流首选!

2025年网格川字塑料托盘厂家推荐排行榜,耐用抗压,仓储物流首选!随着现代物流和仓储行业的快速发展,对托盘的需求日益增长。网格川字塑料托盘因其耐用、抗压、环保等特性,逐渐成为众多企业的首选。为了帮助筛选网格…

基于MATLAB的FIR和IIR低通/带通滤波器实现

一、FIR低通滤波器 %% FIR低通滤波器设计 clear; clc; close all;% 参数设置 Fs = 1000; % 采样率 Fc = 150; % 截止频率 N = 64; % 滤波器阶数% 生成测试信号(含50Hz/150Hz/300Hz成分) t = 0:1/…

基于模糊C均值聚类(FCM)的图像分割技术

图像分割是计算机视觉和图像处理中的关键步骤,而模糊聚类方法特别是模糊C均值(FCM)算法在这一领域表现出色。 模糊聚类图像分割概述 核心原理 模糊C均值聚类(FCM)是一种软聚类算法,它允许每个像素以不同的隶属度属于…

2025年广告衫厂家推荐排行榜,防静电/劳保/国网/餐厅/工厂/电工/防酸碱/电力/车间/航空/员工/文化衫/T恤/POLO衫/冲锋衣公司推荐!

2025年广告衫厂家推荐排行榜,防静电/劳保/国网/餐厅/工厂/电工/防酸碱/电力/车间/航空/员工/文化衫/T恤/POLO衫/冲锋衣公司推荐!随着企业对品牌形象和员工安全的重视程度不断提高,广告衫作为一种重要的宣传工具和工…

2025年管道安装厂家权威推荐榜单:专业施工与优质服务口碑之选!

2025年管道安装厂家权威推荐榜单:专业施工与优质服务口碑之选!随着城市化进程的不断推进,管道安装工程在基础设施建设中的重要性日益凸显。无论是住宅、商业还是工业项目,高质量的管道安装都是确保设施正常运行的关…

2025年流量控制器厂家推荐排行榜,气体流量控制器,液体流量控制器,智能流量控制器公司精选!

2025年流量控制器厂家推荐排行榜:气体、液体与智能流量控制器公司精选随着工业自动化和智能化的快速发展,流量控制器在各个行业中的应用越来越广泛。无论是气体流量控制器、液体流量控制器还是智能流量控制器,选择合…

2025年沸腾制粒机厂家权威推荐榜:沸腾制粒/湿法混合/摇摆制粒机,专业性能与客户口碑深度解析及优质品牌推荐!

2025年沸腾制粒机厂家权威推荐榜:沸腾制粒/湿法混合/摇摆制粒机,专业性能与客户口碑深度解析及优质品牌推荐!随着工业技术的不断进步和市场需求的日益多样化,沸腾制粒机、湿法混合制粒机以及摇摆制粒机等设备在制药…

2025年聚乙烯多功能防水篷布厂家推荐排行榜,耐用防水,户外必备优质品牌!

2025年聚乙烯多功能防水篷布厂家推荐排行榜,耐用防水,户外必备优质品牌!随着户外活动和工业需求的不断增加,聚乙烯多功能防水篷布成为了市场上备受关注的产品。这类篷布以其出色的防水性能、耐用性和多功能性,广泛…

2025年柴油发电机组厂家权威推荐榜:静音高效与持久耐用的行业首选!

2025年柴油发电机组厂家权威推荐榜:静音高效与持久耐用的行业首选!随着电力需求的不断增长和技术进步,柴油发电机组在各个领域中的应用越来越广泛。无论是工业生产、建筑施工还是应急备用电源,柴油发电机组都发挥着…

uml建模复习心得 - 2305

uml建模复习心得复习UML,各种图各有用途,但最核心、最需要下功夫理解的,无疑是类图。它直接决定了代码的结构和质量。 UML图快速回顾 结构图(静态):描述系统由什么组成,如类图、组件图。 行为图(动态):描述系…

SQL Server中关于 INSERTED.Id 与 SCOPE_IDENTITY() 获取新增数据的Id

前景: 通过程序将一个数据库的主表+子表的数据迁移至新的数据库,表的id未自增长,源数据存在删除的情况,所以需要获取插入数据新增id和旧id的比对关系数据 通过如下语句来获取新旧idBEGIN TRY BEGIN TRANSACTION;D…

2025年鸡精生产线/鸡精生产设备厂家推荐排行榜,高效节能与智能化生产之选!

2025年鸡精生产线/鸡精生产设备厂家推荐排行榜,高效节能与智能化生产之选!随着食品工业的不断发展,鸡精作为一种重要的调味品,其生产技术也在不断进步。高效的鸡精生产线和先进的生产设备是确保产品质量和生产效率…

设备二维码图片下载

package com.inovance.paas.tpm.infra.util; import org.apache.commons.compress.utils.IOUtils; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; import java.io.*; im…

neural network中的tensor是什么?

在神经网络中,Tensor(张量) 是核心数据结构,用于表示和操作多维数组。它本质上是数学中张量概念的工程化实现,是标量、向量、矩阵在高维空间的自然扩展。以下从多个维度详细解释: 1. 数学本质:多维数组的泛化维…

2025年工厂维保,工厂机电维修,工厂应急维修,工厂运维服务厂家推荐排行榜,专业高效与全方位保障之选!

2025年工厂维保、工厂机电维修、工厂应急维修、工厂运维服务厂家推荐排行榜,专业高效与全方位保障之选!随着工业4.0时代的到来,制造业的自动化和智能化水平不断提升,工厂维保、机电维修、应急维修及运维服务的需求…

2025/10/17

Return on Investment(ROI) 投资回报率 - 最常用的商业术语 这是“ROI”最核心和最广泛使用的含义。 全称:Return on Investment 中文:投资回报率 定义:衡量一项投资盈利效率的指标,用于评估从投资中获得的回报与…