如何在 JavaScript 中克隆 Date 对象
要克隆 Date
对象:
-
使用
getTime()
方法获取自 Unix 纪元以来的毫秒数。 -
将结果传递给
Date()
构造函数。 -
例如,
const dateClone = new Date(date.getTime())
。
const date = new Date();
console.log(date);
const dateClone = new Date(date.getTime());
console.log(dateClone);
我们可以点击上面的 运行示例 查看实际运行结果。
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*
方法)更改给定日期的值,这并不总是我们想要的。
在使用该方法之前创建日期的克隆允许我们保留原始日期。
相关文章
使用 CSS 和 JavaScript 制作文本闪烁
发布时间:2023/04/28 浏览次数:146 分类:CSS
-
本文提供了使用 CSS、JavaScript 和 jQuery 使文本闪烁的详细说明。
在 PHP 变量中存储 Div Id 并将其传递给 JavaScript
发布时间:2023/03/29 浏览次数:69 分类:PHP
-
本文教导将 div id 存储在 PHP 变量中并将其传递给 JavaScript 代码。
在 JavaScript 中从字符串中获取第一个字符
发布时间:2023/03/24 浏览次数:93 分类:JavaScript
-
在本文中,我们将看到如何使用 JavaScript 中的内置方法获取字符串的第一个字符。
在 JavaScript 中获取字符串的最后一个字符
发布时间:2023/03/24 浏览次数:141 分类:JavaScript
-
本教程展示了在 javascript 中获取字符串最后一个字符的方法