تنسيق التواريخ ISO 8601 مع إزاحة المنطقة الزمنية في JavaScript
في JavaScript، قد يكون إنشاء التواريخ بتنسيق ISO 8601 مع إزاحة المنطقة الزمنية أمرًا صعبًا بسبب تعويضات المنطقة الزمنية السلبية المحتملة. تتناول هذه المقالة هذه المشكلة وتوفر حلاً.
فهم التنسيق
يحدد تنسيق ISO 8601 التواريخ كما يلي: YYYY-MM-DDThh:mm:ss± سه: مم. على سبيل المثال، 2002-10-10T12:00:00-05:00 يمثل ظهر يوم 10 أكتوبر 2002، بالتوقيت الصيفي المركزي (خمس ساعات خلف التوقيت العالمي المنسق).
العثور على التوقيت المحلي والتوقيت العالمي المنسق إزاحة
لإنشاء سلسلة ISO 8601، يجب علينا أولاً الحصول على التوقيت المحلي باستخدام جديد Date() وحساب إزاحة UTC باستخدام getTimezoneOffset(). يتم الحصول على الإزاحة بالدقائق، لذلك نقسمها على 60 للحصول على عدد الساعات.
التعامل مع إزاحات المنطقة الزمنية السلبية
يمكن أن ترجع الدالة getTimezoneOffset() قيمة سلبية قيم. في مثل هذه الحالات، يجب علينا تنسيق الإزاحة بشكل مختلف. على سبيل المثال، يجب أن يتم عرض إزاحة -120 دقيقة على أنها 02:00 (ساعتان قبل التوقيت العالمي المنسق).
وظيفة المساعدة للتنسيق
لتبسيط العملية ، يمكن استخدام وظيفة مساعدة، toIsoString، لتنسيق التواريخ بتنسيق ISO 8601 مع إزاحات المنطقة الزمنية:
function toIsoString(date) { var tzo = -date.getTimezoneOffset(), // Make the offset positive dif = tzo >= 0 ? ' ' : '-', // Determine the sign pad = function(num) { // Ensure two-digit representation return (numتأخذ هذه الوظيفة التاريخ كوسيطة وتقوم بتنسيقه وفقًا لمواصفات ISO 8601، بما في ذلك إزاحة المنطقة الزمنية.
مثال للاستخدام
يوضح التعليمة البرمجية التالية كيفية استخدام الدالة toIsoString:
var dt = new Date(); console.log(toIsoString(dt)); // Outputs the date in ISO 8601 format with timezone offsetباستخدام هذا الأسلوب، يمكنك بسهولة تنسيق التواريخ في JavaScript وفقًا لمعيار ISO 8601، مما يضمن التزامها بالتنسيق الصحيح.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3