当前位置:首页 > 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
分享给朋友:

相关文章

vue实现js休眠

vue实现js休眠

Vue 中实现 JavaScript 休眠 在 Vue 中实现 JavaScript 休眠通常需要使用异步方式,以避免阻塞主线程。以下是几种常见方法: 使用 setTimeout 和 Promise…

vue实现js休眠

vue实现js休眠

实现 JavaScript 休眠的方法 在 Vue 中实现 JavaScript 休眠(延迟执行)可以通过以下方式实现。由于 JavaScript 本身没有内置的 sleep 函数,通常使用 Prom…

js实现密码

js实现密码

密码强度验证 使用正则表达式验证密码强度是一种常见方法。以下代码检查密码是否包含大小写字母、数字和特殊字符,且长度至少为8位: function checkPasswordStrength(pass…

js实现 功能

js实现 功能

在 JavaScript 中实现功能通常涉及多个关键步骤,具体取决于功能需求。以下是常见功能的实现方法和示例: 基本功能实现 使用函数封装逻辑是最直接的方式。例如,实现一个计算两数之和的函数: f…

js验证码的实现

js验证码的实现

验证码的基本实现原理 验证码(CAPTCHA)的核心目标是区分人类用户和自动化程序。JavaScript可用于生成或验证客户端验证码,但需注意纯前端验证可能被绕过,通常需结合后端验证。 纯前端验证码…

js实现菜单

js实现菜单

实现基本HTML结构 使用HTML创建菜单的基本框架,通常包含<ul>和<li>元素。示例结构如下: <ul id="menu"> <li><…