JavaScript日期

原创
admin 4个月前 (08-19) 阅读数 20 #JavaScript

日期

在JavaScript中,Date对象用于处理日期和时间。它基于Unix时间戳,即自1970年1月1日(UTC)起经过的毫秒数。Date对象提供了多种方法来创建、操作和格式化日期。

创建Date对象

创建Date对象有几种方式:

  • 不带参数:创建表示当前日期和时间的Date对象

  • 使用时间戳:new Date(时间戳)

  • 使用日期字符串:new Date("日期字符串")

  • 使用年月日时分秒:new Date(年, 月, 日, 时, 分, 秒, 毫秒)

示例:

// 创建当前日期对象
let now = new Date();

// 使用时间戳创建
let timestamp = new Date(1609459200000);

// 使用日期字符串创建
let dateStr = new Date("2021-01-01");

// 使用参数创建
let dateParams = new Date(2021, 0, 1, 0, 0, 0);

Date对象的方法

Date对象提供了丰富的方法来获取和设置日期的各个部分:

获取日期部分

  • getFullYear() - 获取四位数的年份

  • getMonth() - 获取月份(0-11)

  • getDate() - 获取月份中的天数(1-31)

  • getDay() - 获取星期几(0-6,0表示星期日)

  • getHours() - 获取小时(0-23)

  • getMinutes() - 获取分钟(0-59)

  • getSeconds() - 获取秒(0-59)

  • getMilliseconds() - 获取毫秒(0-999)

设置日期部分

  • setFullYear() - 设置年份

  • setMonth() - 设置月份(0-11)

  • setDate() - 设置月份中的天数(1-31)

  • setHours() - 设置小时(0-23)

  • setMinutes() - 设置分钟(0-59)

  • setSeconds() - 设置秒(0-59)

  • setMilliseconds() - 设置毫秒(0-999)

UTC方法

除了上述方法,Date对象还提供了对应的UTC方法,这些方法使用世界协调时(UTC)而不是本地时间:

  • getUTCFullYear(), getUTCMonth(), getUTCDate()等

  • setUTCFullYear(), setUTCMonth(), setUTCDate()等

格式化日期

Date对象提供了多种格式化日期的方法:

  • toString() - 将日期转换为字符串

  • toDateString() - 将日期部分转换为字符串

  • toTimeString() - 将时间部分转换为字符串

  • toLocaleString() - 根据本地格式将日期转换为字符串

  • toISOString() - 将日期转换为ISO格式的字符串

计算时间差

可以使用Date对象计算两个日期之间的时间差:

let start = new Date();
// 执行一些操作
let end = new Date();
let diff = end - start; // 时间差(毫秒)

注意事项

  • 月份是从0开始的(0表示一月,11表示十二月)

  • 当设置日期的某个部分超出合理范围时,相邻的部分会自动调整

  • 不建议使用Date构造函数解析日期字符串,因为不同浏览器的实现可能不一致

  • 对于高精度时间测量,可以使用Performance API

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权本站发表,未经许可,不得转载。

作者文章
热门
最新文章
标签列表