当前位置:首页 > JavaScript

js日期实现

2026-01-31 19:27:07JavaScript

日期对象创建

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

const now = new Date();

通过指定参数创建特定日期:

const specificDate = new Date(2023, 11, 31); // 月份从0开始(11代表12月)
const dateFromString = new Date("2023-12-31T00:00:00");

日期获取方法

获取日期各组成部分:

const year = now.getFullYear();
const month = now.getMonth() + 1; // 0-11需要+1
const day = now.getDate();
const hours = now.getHours();
const minutes = now.getMinutes();
const seconds = now.getSeconds();
const milliseconds = now.getMilliseconds();
const dayOfWeek = now.getDay(); // 0(周日)到6(周六)

日期设置方法

修改日期组成部分:

now.setFullYear(2024);
now.setMonth(6); // 7月
now.setDate(15);
now.setHours(14);
now.setMinutes(30);

日期格式化

转换为本地字符串:

js日期实现

now.toLocaleDateString(); // "2023/12/31"
now.toLocaleTimeString(); // "14:30:00"
now.toLocaleString(); // "2023/12/31 14:30:00"

自定义格式化函数:

function formatDate(date) {
    return `${date.getFullYear()}-${String(date.getMonth()+1).padStart(2,'0')}-${String(date.getDate()).padStart(2,'0')}`;
}

日期计算

时间戳计算(毫秒数):

const timestamp = now.getTime();
const tomorrow = new Date(timestamp + 86400000); // 加1天

使用日期差值:

js日期实现

const date1 = new Date(2023, 0, 1);
const date2 = new Date(2023, 11, 31);
const diffDays = Math.round((date2 - date1) / (1000 * 60 * 60 * 24));

时区处理

UTC方法(忽略本地时区):

const utcHours = now.getUTCHours();
now.setUTCHours(12);

转换为ISO格式:

const isoString = now.toISOString(); // "2023-12-31T06:30:00.000Z"

日期库推荐

对于复杂操作推荐使用第三方库:

  • Moment.js(传统选择,已停止更新)
  • date-fns(模块化现代库)
  • Day.js(轻量级Moment替代品)
  • Luxon(更强大的时区处理)

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

相关文章

js实现图片轮播

js实现图片轮播

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

js类实现

js类实现

使用类实现 JavaScript 功能 在 JavaScript 中,类(Class)是一种语法糖,基于原型继承机制。通过 class 关键字可以更直观地定义对象模板。 基本类定义 class…

js实现求导

js实现求导

实现数值求导的方法 在JavaScript中实现求导通常采用数值方法,因为JavaScript不是符号计算语言。以下是常见的数值微分方法: 中心差分法 中心差分法提供较高精度的导数近似:…

js画图实现

js画图实现

使用Canvas API绘制图形 Canvas是HTML5提供的绘图API,通过JavaScript操作Canvas元素可以绘制各种图形。以下是一个简单的示例: <canvas id="myC…

js图片轮播的实现

js图片轮播的实现

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

vue 实现日期滚动

vue 实现日期滚动

Vue 实现日期滚动的方法 使用第三方库(如vant或element-ui) 安装vant或element-ui库,这些库提供了现成的日期选择组件,支持滚动选择日期。以vant为例: <…