JavaScript Date Formats
ورودی تاریخ در جاوا اسکریپت
در جاوا اسکریپت 3 نوع ورودی برای تاریخ وجود دارد:
نوع | مثال |
---|---|
ISO | "2015-03-25" (The International Standard) |
Short Date | "03/25/2015" |
Long Date | "Mar 25 2015" or "25 Mar 2015" |
خروجی تاریخ در جاوا اسکریپت
مستقل از ورودی تاریخ، جاوا اسکریپت به صورت پیشفرض تاریخ را به صورت یک رشته مانند زیر نمایش میدهد:
JavaScript ISO Dates
ISO 8601 استاندارد بینالمللی برای ارائه تاریخ و زمان است. نحوه نوشتار آن (YYYY-MM-DD) فرمت ارجح در جاوا اسکریپت است.
const d = new Date("2015-03-25");
تاریخ محاسبه شده نسبت به منطقه زمانی شما خواهد بود. بسته به موقعیت زمانی شما، نتیجه کد بالا تاریخی بین 24 مارس و 25 مارس خواهد بود.
ISO Dates (Year and Month)
میتوان تاریخ ISO را بدون تعیین روز آن نوشت.
const d = new Date("2015-03");
بسته به موقعیت زمانی، نتیجه بالا تاریخی بین 28 فوریه و 1 مارس خواهد بود.
ISO Dates (Only Year)
میتوان تاریخ ISO را بدون تعیین روز و ماه آن نوشت.
const d = new Date("2015");
بسته به موقعیت زمانی نتیجه کد بالا تاریخی بین 31 دسامبر 2014 و 1 ژانویه 2015 خواهد بود.
ISO Dates (Date-Time)
میتوان تاریخ 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");
JavaScript Short Dates
تاریخ کوتاه به صورت "MM/DD/YYYY" نوشته میشود.
const d = new Date("03/25/2015");
هشدار: در بعضی از مرورگرها، ماه و روز بدون صفر ابتدای آن ممکن است که خطا ایجاد کند:
const d = new Date("2015-3-25");
رفتار "YYYY/MM/DD" مشخص نیست. بعضی مرورگرها سعی میکنند که فرمت را حدس بزنند و بعضی دیگر مقدار NaN را برمیگردانند.
const d = new Date("2015/03/25");
گفته بالا برای فرمت "DD-MM-YYYY" نیز صادق است.
const d = new Date("25-03-2015");
JavaScript Long Dates
فرمت تاریخ بلند اکثراً به صورت "MMM DD YYYY" نوشته میشود.
const d = new Date("Mar 25 2015");
ماه و روز میتوانند جایشان عوض شود:
const d = new Date("25 Mar 2015");
همچنین ماه را میتوان به صورت کامل (January) یا مخفف (Jan) نوشت.
const d = new Date("January 25 2015");
یا:
const d = new Date("Jan 25 2015");
کاما نادیده گرفته میشود و اسمها به بزرگ و کوچک بودن حروف حساس نیستند.
const d = new Date("JANUARY, 25, 2015");
Date Input - Parsing Dates
اگر تاریخ را به صورت رشته معتبر دارید، میتوانید از Date.parse()
برای تبدیل آن به میلی ثانیه استفاده کنید. این تابع شیء تاریخ شما را نسبت به 1 ژانویه 1970 محاسبه و زمان را برحسب میلی ثانیه برمیگرداند.
let msec = Date.parse("March 21, 2012");