فرمتهای تاریخ JavaScript
ورودی تاریخ جاوااسکریپت
معمولاً 3 نوع فرمت ورودی تاریخ جاوا اسکریپت وجود دارد:
نکته: فرمت ISO یک استاندارد سختگیرانه در جاوااسکریپت دنبال میکند.
Example | Type |
"2015-03-25" (The International Standard) | ISO Date |
"03/25/2015" | Short Date |
"Mar 25 2015" or "25 Mar 2015" | Long Date |
نکته:سایر فرمتها به اندازه کافی تعریف شده نیستند و ممکن است مربوط به مرورگر باشند.
خروجی تاریخ در جاوا اسکریپت
مستقل از فرمت ورودی، JavaScript (به طور پیشفرض) تاریخها را به صورت رشته متن کامل خواهد نمایش داد.
Wed Jun 26 2024 13:39:04 GMT-0700 (Pacific Daylight Time)
تاریخهای ISO JavaScript
ISO 8601 استاندارد بینالمللی برای نمایش تاریخها و زمانها است.
سینتکس ISO 8601 (YYYY-MM-DD) نیز قالب تاریخ مورد علاقه JavaScript است
نکته: تاریخ محاسبه شده نسبت به منطقه زمانی شما خواهد بود
نکته: بستگی به منطقه زمانی شما دارد، نتیجه بالا در مارس بین 24 و 25 تغییر خواهد کرد.
تاریخهای ISO (سال و ماه)
تاریخهای ISO میتوانند بدون مشخص کردن روز نوشته شوند (YYYY-MM):
const d = new Date("2015-03");
مناطق زمانی باعث تغییر نتیجه بین 28 فوریه و 1 مارس خواهند شد.
تاریخهای ISO (تنها سال)
تاریخهای ISO میتوانند بدون ماه و روز (YYYY) نوشته شوند.
const d = new Date("2015");
نکته: مناطق زمان ممکن است نتیجه بالا را بین 31 دسامبر 2014 و 1 ژانویه 2015 متفاوت کنند.
تاریخهای ISO (تاریخ-زمان)
تاریخهای ISO میتوانند با اضافه کردن ساعت، دقیقه و ثانیه نوشته شوند(YYYY-MM-DDTHH:MM:SSZ):
const d = new Date("2015-03-25T12:00:00Z");
تاریخ و زمان با یک T بزرگ جدا میشود.
زمان UTC با حرف بزرگ Z تعریف میشود.
اگر می خواهید زمان را نسبت به UTC تغییر دهید، Z را حذف کرده و به جای آن +HH:MM یا -HH:MM اضافه کنید.
const d = new Date("2015-03-25T12:00:00-06:30");
نکته: UTC (زمان هماهنگ جهانی) همانند GMT (زمان میانگین گرینویچ) است.
نکته: حذف T یا Z در یک رشته زمان-تاریخ میتواند نتایج مختلفی را در مرورگرهای مختلف ایجاد کند.
منطقه های زمانی
هنگام تنظیم یک تاریخ، بدون مشخص کردن منطقه زمانی، جاوااسکریپت از منطقه زمانی مرورگر استفاده خواهد کرد.
هنگام دریافت تاریخ، بدون تعیین منطقه زمانی، نتیجه به منطقه زمانی مرورگر تبدیل میشود.
در واقع: اگر تاریخ / زمانی در GMT (زمان متوسط گرینویچ) ایجاد شود، تاریخ / زمان در صورت مشاهده کاربر از مرکز ایالات متحده به CDT (زمان تابستانی مرکزی آمریکا) تبدیل خواهد شد.
تواریخ کوتاه جاوا اسکریپت
تاریخ های کوتاه با یک دستور مترجم "MM/DD/YYYY" به این صورت نوشته می شوند:
const d = new Date("03/25/2015");
هشدارها!
const d = new Date("2015-3-25");
const d = new Date("2015/03/25");
const d = new Date("25-03-2015");
فرمتهای تاریخ جاوااسکریپت
تاریخهای بلند بیشتر به صورت 'MMM DD YYYY' معمولاً نوشته شدهاند.
const d = new Date("Mar 25 2015");
ماه و روز میتوانند به هر ترتیبی باشند:
const d = new Date("25 Mar 2015");
ماه میتواند به صورت کامل نوشته شود (ژانویه)، یا به صورت اختصار (Jan) نوشته شود:
const d = new Date("January 25 2015");
const d = new Date("Jan 25 2015");
کاماها نادیده گرفته میشوند. نامها حساس به بزرگی و کوچکی حروف نیستند.
const d = new Date("JANUARY, 25, 2015");
ورود تاریخ - تجزیه تاریخها
اگر یک رشته تاریخ معتبر داشته باشید، میتوانید از متد Date.parse() برای تبدیل آن به میلیثانیه استفاده کنید.
Date.parse() تعداد میلی ثانیه بین تاریخ و 1 ژانویه 1970 را باز می گرداند:
let msec = Date.parse("March 21, 2012");
سپس می توانید از تعداد میلی ثانیه برای تبدیل ان به یک شیء date استفاده کنید:
let msec = Date.parse("March 21, 2012");
const d = new Date(msec);
خلاصه درس