迹忆客 专注技术分享

当前位置:主页 > 学无止境 > WEB前端 > JavaScript >

如何在 JavaScript 中克隆 Date 对象

作者:迹忆客 最近更新:2022/10/25 浏览次数:

要克隆 Date 对象:

  1. 使用 getTime() 方法获取自 Unix 纪元以来的毫秒数。
  2. 将结果传递给 Date() 构造函数。
  3. 例如,const dateClone = new Date(date.getTime())
const date = new Date();
console.log(date);

const dateClone = new Date(date.getTime());

console.log(dateClone);

运行示例

JavaScript 中克隆 Date 对象

我们可以点击上面的 运行示例 查看实际运行结果。

getTime 方法返回一个数字,该数字表示 1970 年 1 月 1 日午夜和给定日期之间经过的毫秒数。

console.log(new Date().getTime());

Date() 构造函数可以传递一个时间戳作为参数,并创建一个新的 Date 对象来存储指定的日期和时间。

在使用任何改变 Date 对象的方法之前,克隆 Date 是最佳实践,例如 set*

const date = new Date('2022-09-24T09:25:00');

// 👇️ Sap Sep 24 2022 09:25:00
console.log(date);

const dateClone = new Date(date.getTime());

// 👇️ Sap Sep 24 2022 09:25:00
console.log(dateClone);

dateClone.setHours(0, 0, 0, 0);

// 👇️ Sat Sep 24 2022 00:00:00
console.log(dateClone);

// 👇️ Sat Sep 24 2022 09:25:00 (didn't change original)
console.log(date);

我们使用 getTime() 方法获取日期的时间戳并将其传递给 Date() 构造函数以获取 Date 对象。

当我们必须使用某些 set* 方法但又不想改变原始日期时,通常会使用此方法。

在示例中,我们使用 setHours() 方法更改克隆日期的小时、分钟、秒和毫秒。

setHours() 方法(以及所有其他 set* 方法)更改给定日期的值,这并不总是我们想要的。

在使用该方法之前创建日期的克隆允许我们保留原始日期。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便