Rumah  >  Artikel  >  hujung hadapan web  >  Cara Mensiri dan Menyahseri Objek Datetime dalam JSON Antara Python dan JavaScript

Cara Mensiri dan Menyahseri Objek Datetime dalam JSON Antara Python dan JavaScript

Linda Hamilton
Linda Hamiltonasal
2024-10-19 17:28:30971semak imbas

How to Serialize and Deserialize Datetime Objects in JSON Between Python and JavaScript

Mengendalikan Objek Datetime dalam JSON Antara Python dan JavaScript

Apabila bertukar-tukar data antara Python dan JavaScript, adalah perkara biasa untuk menemui objek datetime. Untuk memastikan penyiaran lancar dan penyahserikatan objek ini, pelbagai pendekatan boleh digunakan.

Satu kaedah yang disyorkan melibatkan penggunaan parameter 'lalai' json.dumps dalam Python untuk mengendalikan objek datetime. Parameter ini mendayakan spesifikasi fungsi pengendali yang menukar objek datetime ke format boleh bersiri.

<code class="python">from datetime import datetime

date_handler = lambda obj: (
    obj.isoformat()
    if isinstance(obj, (datetime.datetime, datetime.date))
    else None
)
json_str = json.dumps(datetime.datetime.now(), default=date_handler)
print(json_str)</code>

Pendekatan ini memastikan objek datetime Python ditukar kepada format ISO 8601, yang diseragamkan dan diiktiraf oleh JavaScript.

"2010-04-20T20:08:21.634121"

Sebagai alternatif, fungsi pengendali lalai yang lebih komprehensif boleh ditakrifkan untuk mengendalikan pelbagai jenis objek:

<code class="python">def handler(obj):
    if hasattr(obj, 'isoformat'):
        return obj.isoformat()
    elif isinstance(obj, ...):
        return ...
    else:
        raise TypeError, 'Object of type %s with value of %s is not JSON serializable' % (type(obj), repr(obj))</code>

Fungsi ini menyemak kehadiran atribut 'isoformat', iaitu biasa dalam objek datetime, dan menukarkannya kepada format boleh bersiri. Selain itu, ia mengendalikan jenis objek lain mengikut keperluan.

Dengan memanfaatkan teknik ini, objek datetime boleh diserikan dengan cekap daripada Python dan dinyahsiri dalam JavaScript, memudahkan pertukaran data yang lancar antara kedua-dua bahasa.

Atas ialah kandungan terperinci Cara Mensiri dan Menyahseri Objek Datetime dalam JSON Antara Python dan JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn