如何在 JavaScript 中将 CFAbsoluteTime 转换为日期对象,反之亦然?

CFAbsoluteTime 是自 2001 年 1 月 1 日 00:00:00 UTC 以来经过的时间。这是 Apple 设备上的标准时间格式。另一方面,日期对象是 JavaScript 中的内置对象,用于表示日期和时间值。它有许多方法用于提供格式设置以及将日期和时间从一种形式转换为另一种形式。

CFAbsolute Time 和 JavaScript Date 对象之间的主要区别在于它们的格式。 CFAabsolute 时间是一个数值,表示自 Unix 纪元以来的毫秒数,而日期对象是表示相对于客户端浏览器的特定日期和时间、年、月、日、小时、分钟、秒和毫秒的对象。

在本教程中我们已经学习了两者 –

  • 将 CFAbsoluteTime 转换为日期对象

  • 将日期对象转换为 CFAbsoluteTime

将 CFAbsoluteTime 转换为日期对象

CFAbsoluteTime 是自 2001 年 1 月 1 日 00:00:00 UTC 以来经过的时间,而日期对象是自 1970 年 1 月 1 日 00:00:00 UTC 以来经过的时间,因此我们需要将它们之间的差异添加到 CFAbsoluteTime 中,是978307200,单位也是毫秒,所以另外,我们需要将结果乘以1000。

让我们看看如何获​​得更多许可的分步方法。

  • 初始化 CFAbsoluteTime 值,我们将其转换为 Date 对象值。

  • 创建一个新的 Date 对象,传递初始化值,并将 978307200 添加到其中,然后乘以 1000(以毫秒为单位)。

  • 最后,打印结果。

示例

在此示例中,我们使用 JavaScript 将 CFAbsoluteTime 转换为日期对象。

<!DOCTYPE html>
<html lang="en">
<head>
   <title>Converting CFAbsoluteTime to Date Object in JavaScript</title>
</head>
<body>
   <h2> Convert CFAbsoluteTime to Date Object </h2>
   <p id="input">CFAbsoluteTime: </p>
   <p id="output">Date Object: </p>
   <script>
      // CFAbsoluteTime
      let CFAbsoluteTime = 641347496.743657;
      document.getElementById("input").innerHTML += CFAbsoluteTime ;
      
      // Convert CFAbsoluteTime to Date Object
      let date = new Date((CFAbsoluteTime + 978307200)  * 1000);
      
      // Display the result
      document.getElementById("output").innerHTML += date;
   </script>
</body>
</html>

将日期对象转换为 CFAbsoluteTime

要将 CFAbsoluteTime 转换为 Date 对象,我们需要执行与之前将 CFAbsoluteTime 转换为 Date 对象完全相反的操作。

以下是在 JavaScript 中将 CFAbsoluteTime 转换为 Date 对象的分步过程 –

  • 使用作为参数传递的日期和时间初始化 Date 对象,我们将其转换为 CFAbsoluteTime。

  • 然后对上述对象使用 getTime() 方法,并将其除以 1000,记住在上面的步骤中我们已经乘以 1000,这里我们只是反转该过程。

  • 最后用结果减去 978307200,就像我们在将 CFAbsoluteTime 转换为 Date 对象时添加一样。

  • 最后,打印结果。

示例

在此示例中,我们使用 JavaScript 将 CFAbsoluteTime 转换为 Date 对象。

<!DOCTYPE html>
<html lang="en">
<head>
   <title>Converting Date Object to CFAbsoluteTime JavaScript</title>
</head>
<body>
   <h2> Convert Date Object to CFAbsoluteTime </h2>
   <p id="input">Date Object: </p>
   <p id="output">CFAbsoluteTime: </p>
   <script>
      // Creting date object
      var date = new Date("June 15, 2023 16:16:36");
      document.getElementById("input").innerHTML += date;
      
      // convert date to CFAbsoluteTime
      var CFAbsoluteTime = (date.getTime() / 1000) - 978307200;
      
      // display CFAbsoluteTime
      document.getElementById("output").innerHTML += CFAbsoluteTime;
   </script>
</body>
</html>

摘要

让我们总结一下我们在本教程中学到的内容。我们看到,要将 CFAbsoluteTime 转换为 Date 对象或将 Date 对象转换为 CFAbsoluteTime,我们只需要执行简单的数学运算。我们需要看到这两个时间之间有两个差异,CFAbsoluteTime 是自 UTC 2001 年 1 月 1 日 00:00:00 以来经过的时间,而 Date 对象是自 1970 年 1 月 1 日 00:00 以来经过的时间: 00 世界标准时间。因此,它们之间的差是 978307200,我们可以用它通过加法或减法将一种形式转换为另一种形式。第二个是 CFAbsoluteTime 的单位是毫秒,我们可以通过乘以 1000 进行转换,反之亦然。

以上就是如何在 JavaScript 中将 CFAbsoluteTime 转换为日期对象,反之亦然?的详细内容,更多请关注双恒网络其它相关文章!

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!
8. 精力有限,不少源码未能详细测试(解密),不能分辨部分源码是病毒还是误报,所以没有进行任何修改,大家使用前请进行甄别
9.本站默认解压密码为:www.sudo1.com
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。
不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。
本站信息来自网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。
如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。
我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!

云资源网 » 如何在 JavaScript 中将 CFAbsoluteTime 转换为日期对象,反之亦然?

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
提示下载完但解压或打开不了?
最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或 联络我们.。
你们有qq群吗怎么加入?
当然有的,如果你是帝国cms、易优cms、和pbootcms系统的爱好者你可以加入我们的QQ千人交流群https://www.sudo1.com/page-qun.html。
  • 会员数(个)
  • 12334资源数(个)
  •        
  • 资源(G)
  •        
  • 今日下载
  • 1405稳定运行(天)

提供最优质的资源集合

立即查看 了解详情