Python과 JavaScript 간의 JSON datetime
JSON을 사용하여 Python과 JavaScript 간에 datetime 객체를 교환하는 것은 각각의 날짜와 JavaScript의 차이로 인해 어려울 수 있습니다. 시간 형식. 이 문제를 해결하기 위해 사용자 정의 JSON 직렬화 및 역직렬화 핸들러를 구현할 수 있습니다.
Python에서는 json.dumps 함수의 기본 매개변수를 사용하여 직렬화 핸들러 함수를 정의할 수 있습니다. 이 핸들러는 직렬화 중에 datetime 객체가 발견될 때마다 호출됩니다. 다음 코드 조각은 날짜/시간 개체를 ISO 8601 형식으로 변환하는 핸들러를 생성하는 방법을 보여줍니다.
<code class="python">date_handler = lambda obj: ( obj.isoformat() if isinstance(obj, (datetime.datetime, datetime.date)) else None ) json.dumps(datetime.datetime.now(), default=date_handler)</code>
이렇게 하면 날짜/시간 개체가 ISO 8601 형식의 문자열로 출력됩니다.
<code class="json">"2010-04-20T20:08:21.634121"</code>
JavaScript에서는 사용자 정의 역직렬화 핸들러를 사용하여 수신된 ISO 8601 문자열을 다시 날짜/시간 객체로 변환할 수 있습니다. 포괄적인 역직렬화 핸들러 함수는 다음과 같습니다.
<code class="javascript">function handler(obj) { if (typeof obj === 'string') { if (/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}/.test(obj)) { // ISO 8601 Date string return new Date(obj); } } return obj; }</code>
이러한 사용자 정의 핸들러를 사용하면 JSON을 사용하여 Python과 JavaScript 간에 날짜/시간 객체를 원활하게 교환하여 두 플랫폼 간의 호환성을 보장할 수 있습니다.
위 내용은 JSON을 사용하여 Python과 JavaScript 간에 날짜/시간 개체를 교환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!