当前位置:首页 > JavaScript

js date实现

2026-04-06 02:32:46JavaScript

日期对象创建

使用 new Date() 构造函数创建日期对象,支持多种参数格式:

const now = new Date(); // 当前时间
const specificDate = new Date(2023, 11, 31); // 年月日(月份0-11)
const fromString = new Date("2023-12-31T12:00:00"); // ISO字符串
const fromTimestamp = new Date(1640995200000); // 时间戳(毫秒)

日期获取与设置

通过日期对象的方法获取或修改年、月、日等组成部分:

js date实现

const date = new Date();
const year = date.getFullYear(); // 获取年份(4位数)
const month = date.getMonth(); // 获取月份(0-11)
date.setDate(15); // 设置日期为当月15号
date.setHours(23, 59, 59); // 设置时间为23:59:59

日期格式化

转换为字符串或自定义格式输出:

const date = new Date();
console.log(date.toISOString()); // "2023-12-31T12:00:00.000Z"
console.log(date.toLocaleDateString("zh-CN")); // "2023/12/31"(中文格式)
console.log(`${date.getFullYear()}-${date.getMonth()+1}-${date.getDate()}`); // 自定义拼接

日期计算

通过时间戳或直接修改日期值进行计算:

js date实现

const date1 = new Date("2023-12-01");
const date2 = new Date("2023-12-31");
const diffDays = (date2 - date1) / (1000 * 60 * 60 * 24); // 计算相差天数(30)

const nextWeek = new Date();
nextWeek.setDate(nextWeek.getDate() + 7); // 加7天

时区处理

处理时区差异或UTC时间:

const date = new Date();
const utcHours = date.getUTCHours(); // 获取UTC小时
date.setUTCFullYear(2024); // 设置UTC年份
console.log(date.toLocaleString("en-US", { timeZone: "America/New_York" })); // 纽约时区时间

日期库推荐

复杂操作建议使用第三方库:

  • Moment.js(已停止更新,但广泛使用)
  • date-fns(模块化轻量库)
  • Day.js(Moment.js的轻量替代)
// Day.js示例
const dayjs = require('dayjs');
console.log(dayjs().format("YYYY-MM-DD HH:mm:ss"));

标签: jsdate
分享给朋友:

相关文章

js实现报表

js实现报表

使用JavaScript实现报表 在JavaScript中实现报表功能可以通过多种方式完成,常见的方法包括使用原生JavaScript、第三方库(如Chart.js、D3.js)或结合后端数据渲染。以…

js实现抽奖

js实现抽奖

实现抽奖功能的基本思路 抽奖功能的核心是随机选择奖项并展示结果。可以通过数组存储奖项,利用随机数生成索引,最后通过动画增强用户体验。 准备奖项数据 定义一个数组存储奖项信息,每个奖项可以包含名称、图…

js实现二叉树

js实现二叉树

二叉树的基本概念 二叉树是一种树形数据结构,每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树的常见操作包括插入、删除、遍历等。 二叉树的节点定义 在JavaScript中,二叉树的节点可…

js实现dh

js实现dh

JavaScript 实现 DH(Diffie-Hellman)密钥交换 Diffie-Hellman(DH)密钥交换是一种安全协议,允许双方在不安全的通信信道上建立一个共享密钥。以下是如何在 Jav…

js实现vue路由

js实现vue路由

Vue 路由的基本实现 在 Vue.js 中实现路由功能通常使用 Vue Router 库。Vue Router 是 Vue.js 官方的路由管理器,用于构建单页面应用(SPA)。 安装 Vue R…

js实现密码

js实现密码

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