Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk menukar hasil JSON sehingga kini menggunakan JavaScript?

Bagaimana untuk menukar hasil JSON sehingga kini menggunakan JavaScript?

王林
王林ke hadapan
2023-09-08 11:33:08576semak imbas

如何使用 JavaScript 将 JSON 结果转换为日期?

JSON ialah format data berkuasa yang digunakan untuk bertukar-tukar data antara pelayan dan pelanggan. Banyak kali, data JSON diterima dalam format rentetan dan kami perlu menukarnya menjadi objek JSON yang boleh digunakan. Dalam proses ini, keperluan penting adalah untuk menukar data rentetan ke dalam format Tarikh. Dalam artikel ini, kita akan belajar cara menukar hasil JSON kepada rentetan tarikh menggunakan Javascript.

Objek JSON mengandungi tarikh seperti ini -

{
   name: "John",
   time: '/Date(1559072200000)/'
}

Hasilnya ialah -

Wed May 29 2019 01:06:40 GMT+0530 (India Standard Time) 

Berikut adalah beberapa cara untuk mencapai matlamat ini -

  • Gunakan kaedah rentetan.ganti

  • Gunakan ungkapan biasa

Kaedah 1: Gunakan kaedah replace() String

Kaedah ganti dalam JavaScript digunakan untuk menggantikan sebahagian rentetan dengan rentetan lain. Berikut ialah langkah-langkah untuk menukar hasil JSON sehingga kini menggunakan kaedah String.replace.

  • Gantikan bahagian pertama rentetan "/Date(" dengan rentetan kosong

  • Ganti bahagian terakhir rentetan ")/" dengan rentetan kosong

  • Buat objek Tarikh baharu dengan menghuraikan milisaat daripada rentetan JSON

  • Sekarang anda mempunyai tarikh tersebut, anda boleh menggunakannya sebagai tarikh javascript biasa.

Contoh

Dalam contoh ini, kami menggunakan kaedah String.replace() untuk menukar hasil JSON kepada tarikh.

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

Kaedah 2: Gunakan ungkapan biasa

Berikut ialah langkah untuk menukar hasil JSON kepada tarikh menggunakan ungkapan biasa.

  • Ekstrak cap waktu unix daripada rentetan tarikh JSON menggunakan ungkapan biasa

  • Buat objek Tarikh baharu dengan menghuraikan milisaat daripada rentetan JSON

  • Sekarang anda mempunyai tarikh, anda boleh menggunakannya sebagai tarikh JavaScript biasa.

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

Atas ialah kandungan terperinci Bagaimana untuk menukar hasil JSON sehingga kini menggunakan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam