当前位置:首页 > JavaScript

js实现时间转换

2026-03-01 18:31:51JavaScript

时间戳转换为日期字符串

使用 new Date() 和日期方法可以轻松转换时间戳为可读格式。时间戳通常是从1970年1月1日开始的毫秒数。

const timestamp = 1625097600000;
const date = new Date(timestamp);
const dateString = date.toLocaleString(); // 转换为本地时间字符串
console.log(dateString); // 输出如 "2021/6/30 下午8:00:00"

自定义日期格式

通过提取日期对象的各个部分,可以构建自定义格式的日期字符串。

const date = new Date();
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
const customFormat = `${year}-${month}-${day}`;
console.log(customFormat); // 输出如 "2023-05-15"

日期字符串转时间戳

使用 Date.parse() 方法或 new Date().getTime() 可以将日期字符串转换为时间戳。

js实现时间转换

const dateString = '2023-05-15';
const timestamp1 = Date.parse(dateString);
const timestamp2 = new Date(dateString).getTime();
console.log(timestamp1, timestamp2); // 输出相同的时间戳

计算时间差

通过获取两个日期的时间戳,可以计算它们之间的时间差。

const date1 = new Date('2023-05-10');
const date2 = new Date('2023-05-15');
const diffTime = Math.abs(date2 - date1);
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
console.log(diffDays); // 输出天数差,如 5

使用第三方库

对于更复杂的时间操作,可以使用如 moment.jsdate-fns 等第三方库。

js实现时间转换

// 使用 moment.js
const moment = require('moment');
const formattedDate = moment().format('YYYY-MM-DD HH:mm:ss');
console.log(formattedDate);

// 使用 date-fns
const { format } = require('date-fns');
const formattedDateFns = format(new Date(), 'yyyy-MM-dd HH:mm:ss');
console.log(formattedDateFns);

处理时区问题

处理不同时区的时间转换时,可以使用 toLocaleString 方法或第三方库。

const date = new Date();
const options = { timeZone: 'Asia/Shanghai' };
const shanghaiTime = date.toLocaleString('en-US', options);
console.log(shanghaiTime); // 输出上海时区的时间

格式化持续时间

将毫秒数转换为更易读的持续时间格式,如 "1小时30分钟"。

function formatDuration(ms) {
    const seconds = Math.floor(ms / 1000);
    const minutes = Math.floor(seconds / 60);
    const hours = Math.floor(minutes / 60);
    return `${hours}小时${minutes % 60}分钟${seconds % 60}秒`;
}
console.log(formatDuration(5430000)); // 输出 "1小时30分钟30秒"

标签: 时间js
分享给朋友:

相关文章

js实现全选

js实现全选

实现全选功能的方法 在JavaScript中实现全选功能通常涉及监听全选复选框的点击事件,并根据其状态控制其他复选框的选中状态。以下是几种常见的实现方式: 基础DOM操作实现 通过获取所有目标复选框…

js实现类

js实现类

JavaScript 实现类的几种方式 JavaScript 是一种基于原型的语言,但在 ES6 之后引入了 class 语法糖,使得实现类更加直观。以下是几种常见的实现方式: 使用构造函数 传统的…

js实现dh

js实现dh

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

js类实现

js类实现

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

js实现自举

js实现自举

实现 JavaScript 自举的方法 JavaScript 自举(Bootstrap)通常指通过 JavaScript 动态加载自身或依赖的脚本,实现运行时环境的初始化或扩展。以下是几种常见实现方式…

js钟表实现

js钟表实现

实现JavaScript钟表的基本方法 创建一个简单的JavaScript钟表可以通过以下步骤完成,涵盖数字和模拟两种形式。 数字钟表实现 HTML结构只需一个显示时间的容器: <div i…