Maison  >  Article  >  interface Web  >  Comment convertir CFAbsoluteTime en objet Date et vice versa en JavaScript ?

Comment convertir CFAbsoluteTime en objet Date et vice versa en JavaScript ?

王林
王林avant
2023-09-08 15:21:07539parcourir

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

CFAbsoluteTime est le temps écoulé depuis le 1er janvier 2001 00:00:00 UTC. Il s'agit du format d'heure standard sur les appareils Apple. L'objet Date, quant à lui, est un objet intégré en JavaScript utilisé pour représenter les valeurs de date et d'heure. Il dispose de nombreuses méthodes pour fournir le formatage et convertir les dates et les heures d’un formulaire à un autre.

La principale différence entre les objets CFAbsolute Time et JavaScript Date est leur format. CFAabsolute Une heure est une valeur numérique qui représente le nombre de millisecondes depuis l'époque Unix, tandis qu'un objet date est un objet qui représente une date et une heure spécifiques, une année, un mois, un jour, une heure, une minute, une seconde et une milliseconde par rapport à l'heure. navigateur client.

Dans ce tutoriel, nous avons appris les deux -

  • Convertir CFAbsoluteTime en objet date

  • Convertir l'objet date en CFAbsoluteTime

Convertir CFAbsoluteTime en objet date

CFAbsoluteTime est le temps écoulé depuis le 1er janvier 2001 00:00:00 UTC, tandis que l'objet date est le temps écoulé depuis le 1er janvier 1970 00:00:00 UTC, nous devons donc les séparer. La différence ajoutée à CFAbsoluteTime est 978307200, également en millisecondes, nous devons donc en plus multiplier le résultat par 1000.

Voyons la méthode étape par étape pour obtenir plus de licences.

  • Initialisez la valeur CFAbsoluteTime, que nous convertissons en valeur d'objet Date.

  • Créez un nouvel objet Date, transmettez la valeur d'initialisation et ajoutez-y 978307200, puis multipliez-la par 1000 (en millisecondes).

  • Enfin, imprimez les résultats.

Exemple

Dans cet exemple, nous utilisons JavaScript pour convertir un CFAbsoluteTime en un objet date.

<!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>

Convertir l'objet date en CFAbsoluteTime

Pour convertir un CFAbsoluteTime en un objet Date, nous devons faire exactement le contraire de ce que nous avons fait auparavant pour convertir un CFAbsoluteTime en un objet Date.

Voici le processus étape par étape pour convertir un CFAbsoluteTime en objet Date en JavaScript -

  • Initialisez un objet Date avec la date et l'heure passées en paramètres, que nous convertissons en CFAbsoluteTime.

  • Ensuite, utilisez la méthode getTime() sur l'objet ci-dessus et divisez-le par 1000, rappelez-vous qu'à l'étape ci-dessus, nous avons multiplié par 1000, ici nous inversons simplement le processus.

  • Enfin, soustrayez 978307200 du résultat, tout comme nous l'avons ajouté lors de la conversion du CFAbsoluteTime en un objet Date.

  • Enfin, imprimez les résultats.

Exemple

Dans cet exemple, nous utilisons JavaScript pour convertir un CFAbsoluteTime en objet 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>

Résumé

Résumons ce que nous avons appris dans ce tutoriel. Nous voyons que pour convertir un CFAbsoluteTime en objet Date ou un objet Date en CFAbsoluteTime, il suffit d'effectuer des opérations mathématiques simples. Nous devons voir qu'il existe deux différences entre ces deux heures, CFAbsoluteTime est le temps écoulé depuis le 1er janvier 2001 à 00:00:00 UTC et l'objet Date est l'heure depuis le 1er janvier 1970 à 00:00 Temps écoulé : 00 UTC. Par conséquent, la différence entre eux est 978307200, que nous pouvons utiliser pour convertir une forme en une autre par addition ou soustraction. La seconde est que CFAbsoluteTime est en millisecondes et nous pouvons convertir en multipliant par 1000 et vice versa.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer