当前位置: 首页 > news >正文

js 格式化时间

方法一:使用toLocaleStringtoLocaleDateString/toLocaleTimeString

Date对象提供了toLocaleString()toLocaleDateString()toLocaleTimeString()方法,这些方法允许你根据本地时间格式来显示日期和时间。虽然它们不直接提供高度自定义的格式选项,但对于大多数本地化需求来说已经足够。

let date = new Date();  // 使用本地格式显示完整的日期和时间  
console.log(date.toLocaleString());  // 仅显示日期  
console.log(date.toLocaleDateString());  // 仅显示时间  
console.log(date.toLocaleTimeString());  // 也可以指定语言和选项  
console.log(date.toLocaleString('zh-CN', { year: 'numeric', month: 'long', day: 'numeric' }));

方法二:手动格式化

对于需要高度自定义时间格式的场景,你可能需要手动编写函数来格式化时间。这通常涉及到从Date对象中提取年、月、日、时、分、秒等,然后按照指定的格式拼接这些值。

function formatDate(date, format = 'yyyy-MM-dd HH:mm:ss') {  let year = date.getFullYear();  let month = String(date.getMonth() + 1).padStart(2, '0');  let day = String(date.getDate()).padStart(2, '0');  let hour = String(date.getHours()).padStart(2, '0');  let minute = String(date.getMinutes()).padStart(2, '0');  let second = String(date.getSeconds()).padStart(2, '0');  let obj = {  'M+': month, // 月份  'd+': day, // 日  'h+': hour, // 小时  'm+': minute, // 分  's+': second, // 秒  'yyyy': year, // 年份  'MM': month,  'dd': day,  'HH': hour,  'mm': minute,  'ss': second  };  for (let k in obj) {  if (new RegExp(`(${k})`).test(format)) {  format = format.replace(RegExp.$1, (RegExp.$1.length === 1) ? (obj[k]) : (('00' + obj[k]).substr(('' + obj[k]).length)));  }  }  return format;  
}  let date = new Date();  
console.log(formatDate(date, 'yyyy-MM-dd HH:mm:ss'));

方法三:使用第三方库

使用Moment.js
// 首先需要引入moment.js  
// <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>  let date = new Date();  
console.log(moment(date).format('YYYY-MM-DD HH:mm:ss'));
使用date-fns
// 首先需要安装date-fns  
// npm install date-fns  import { format } from 'date-fns';  let date = new Date();  
console.log(format(date, 'yyyy-MM-dd HH:mm:ss'));

http://www.lryc.cn/news/397679.html

相关文章:

  • python 缩放照片
  • 【C语言】指针(1):入门理解(课堂随笔)
  • LLMs可以进行任务规划吗?如果不行,LLMs+GNN可以吗?
  • 性价比高充电宝有哪些?充电宝十大最佳品牌大盘点!
  • hnust 1963: 邻接矩阵表示法
  • Hadoop-15-Hive 元数据管理与存储 Metadata 内嵌模式 本地模式 远程模式 集群规划配置 启动服务 3节点云服务器实测
  • 215.Mit6.S081-实验三-page tables
  • flask使用定时任务flask_apscheduler(APScheduler)
  • ApiFox或postman怎么用params类型传输json或集合+json的String类型
  • 数据结构第16节 最大堆
  • 显卡、显卡驱动、cuda、cuDNN之间关系
  • Rewrk一个更现代的http框架基准测试实用程序
  • 【算法】排序算法介绍 附带C#和Python实现代码
  • 360安全浏览器就是不行-python秒破解
  • Python实现傅里叶级数可视化工具
  • PDF 分割拆分 API 数据接口
  • 【python】随机森林预测汽车销售
  • Stable Diffusion教程|练丹师是如何炼丹的Lora模型训练
  • QT--SQLite
  • 【深度学习入门篇 ②】Pytorch完成线性回归!
  • Syslog 管理工具
  • 硅纪元AI应用推荐 | 百度橙篇成新宠,能写万字长文
  • Codeforces Round 954 (Div. 3)
  • 【Django】报错‘staticfiles‘ is not a registered tag library
  • LeetCode 算法:二叉树的最近公共祖先 III c++
  • Windows CMD 命令汇总表
  • 【python+appium】自动化测试
  • vue 数据类型
  • MySQL(基础篇)
  • springboot中通过jwt令牌校验以及前端token请求头进行登录拦截实战