当前位置:首页 > JavaScript

js 实现日期

2026-04-07 04:36:22JavaScript

日期对象创建

使用 new Date() 创建当前日期对象:

const now = new Date(); // 获取当前日期和时间

指定日期创建:

const specificDate = new Date('2023-10-01'); // 通过字符串  
const dateWithParams = new Date(2023, 9, 1); // 注意月份从0开始(9表示10月)

日期格式化

转换为本地字符串:

js 实现日期

console.log(now.toLocaleDateString()); // 输出本地日期格式(如"2023/10/1")  
console.log(now.toLocaleTimeString()); // 输出本地时间格式(如"14:30:00")  

自定义格式化(手动拼接):

const formattedDate = `${now.getFullYear()}-${(now.getMonth() + 1).toString().padStart(2, '0')}-${now.getDate().toString().padStart(2, '0')}`;  
// 输出类似 "2023-10-01"

日期计算

增减天数:

js 实现日期

const tomorrow = new Date(now);  
tomorrow.setDate(now.getDate() + 1); // 增加1天  

计算日期差(毫秒数转天数):

const diffMs = new Date('2023-10-10') - new Date('2023-10-01');  
const diffDays = Math.floor(diffMs / (1000 * 60 * 60 * 24)); // 结果为9天

日期比较

直接比较时间戳:

const isLater = new Date('2023-10-02') > new Date('2023-10-01'); // true  

第三方库推荐

使用 date-fnsmoment.js(已逐渐淘汰)简化操作:

import { format, addDays } from 'date-fns';  
console.log(format(new Date(), 'yyyy-MM-dd')); // 格式化  
console.log(addDays(new Date(), 7)); // 增加7天  

注意事项

  • 月份从 0 开始(0 表示一月)。
  • 时区问题:new Date(string) 可能因浏览器不同解析结果有差异,建议使用 YYYY-MM-DD 格式。
  • 性能敏感场景建议使用时间戳(Date.now())而非日期对象。

标签: 日期js
分享给朋友:

相关文章

js实现图片轮播

js实现图片轮播

实现基础图片轮播 使用HTML、CSS和JavaScript创建一个简单的图片轮播。HTML部分定义轮播容器和图片,CSS设置样式和动画效果,JavaScript处理轮播逻辑。 <div cl…

js实现延迟

js实现延迟

实现延迟的方法 在JavaScript中,实现延迟操作有多种方式,以下是几种常见的方法: 使用setTimeout函数 setTimeout是JavaScript中最常用的延迟执行方法。它接受一个回…

js实现百叶窗

js实现百叶窗

使用CSS和JavaScript实现百叶窗效果 通过CSS动画和JavaScript事件监听可以实现百叶窗效果。核心思路是将内容区域分割为多个条状元素,通过控制它们的展开/折叠状态来模拟百叶窗。 &…

js 实现跳转

js 实现跳转

使用 window.location.href 进行跳转 通过修改 window.location.href 可以跳转到指定 URL,浏览器会加载新页面: window.location.hre…

js实现的游戏

js实现的游戏

JavaScript 游戏开发基础 JavaScript 是开发网页游戏的流行选择,因其无需插件即可在浏览器中运行。以下是一些关键技术和资源: HTML5 Canvas Canvas 提供了绘制图形…

js实现导航菜单

js实现导航菜单

使用HTML和CSS创建基础结构 导航菜单的基础结构通常由HTML的无序列表(<ul>)和列表项(<li>)组成,每个列表项包含一个链接(<a>)。CSS用于样式化…