JSON est un format de données puissant utilisé pour échanger des données entre serveurs et clients. Plusieurs fois, les données JSON sont reçues au format chaîne et nous devons les convertir en un objet JSON utilisable. Dans ce processus, une exigence importante est de convertir les données de chaîne au format Date. Dans cet article, nous apprendrons comment convertir les résultats JSON en chaîne de date à l'aide de Javascript.
L'objet JSON contient une date comme celle-ci -
{ name: "John", time: '/Date(1559072200000)/' }
Le résultat sera -
Wed May 29 2019 01:06:40 GMT+0530 (India Standard Time)
Voici quelques façons d'y parvenir -
Utilisez la méthode string.replace
Utilisez des expressions régulières
La méthode replace en JavaScript est utilisée pour remplacer une partie d'une chaîne par une autre chaîne. Voici les étapes pour convertir le résultat JSON à ce jour à l'aide de la méthode String.replace.
Remplacez la première partie de la chaîne "/Date(" par une chaîne vide
Remplacez la dernière partie de la chaîne ")/" par une chaîne vide
Créez un nouvel objet Date en analysant les millisecondes d'une chaîne JSON
Maintenant que vous avez une date, vous pouvez l'utiliser comme une date javascript normale.
Dans cet exemple, nous utilisons la méthode String.replace() pour convertir le résultat JSON en date.
<html> <body> <h2>Convert JSON results into a date using JavaScript</h2> <p>Click the following button to convert JSON results into a date</p> <button id="btn" onclick="convert( )"> Click Here </button> <br> <h3>Input Data : </h3> <p id="input"> /Date(1559072200000)/ </p> <h3> Resulting Date: </h3> <p id="output"> </p> <script> function convert() { // Store the JSON date string in a variable var jsonDate = '/Date(1559072200000)/'; // Replace the first part of the string "/Date(" with an empty string jsonDate = jsonDate.replace("/Date(", " ") // Replace the last part of the string ")/" with an empty string jsonDate = jsonDate.replace(")/", " ") // Create a new Date object by parsing the number of milliseconds from the JSON string let strDate = new Date(parseInt(jsonDate)); // Get the and output element in the HTML document let output = document.getElementById("output") // Set the inner text of the output element to the formatted date output.innerText = strDate; } </script> </body> </html>
Voici les étapes pour convertir les résultats JSON à ce jour à l'aide d'expressions régulières.
Extraire l'horodatage Unix de la chaîne de date JSON à l'aide d'une expression régulière
Créez un nouvel objet Date en analysant les millisecondes d'une chaîne JSON
Maintenant que vous avez une date, vous pouvez l'utiliser comme une date JavaScript normale.
<html> <body> <h2>Convert JSON results into a date using JavaScript</h2> <p>Click the following button to convert JSON results into a date</p> <button id="btn" onclick="convert( )"> Click Here </button> <br> <h3>Input Data : </h3> <p id="input"> /Date(1559072200000)/ </p> <h3> Resulting Date: </h3> <p id="output"> </p> <script> // Function to convert the JSON date format to a readable date function convert() { // The JSON date string in the format '/Date(unixTimestamp)/' var jsonDate = '/Date(1559072200000)/'; // Extract the Unix timestamp from the JSON date string using regex jsonDate = jsonDate.match(/\d+/); // Create a new Date object using the unix timestamp let strDate = new Date(parseInt(jsonDate)); // Get a reference to the HTML element with the id "output" let output = document.getElementById("output"); output.innerText = strDate; } </script> </body> </html>
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!