تاریخ و زمان جاوا اسکریپت

به نام خدا با عرض سلام و احترام خدمت شما دوستان عزیز در ادامه آموزش جاوا اسکریت این جلسه قصد داریم به مبحث مهم تاریخ و زمان در جاوا اسکریپت بپردازیم.با ما همراه باشید.

نحوه استفاده از ابجکت تاریخ

ابجکت Date  این به شما امکان می دهد با دسترسی به ساعت سیستم کامپیوتری از طریق مرورگر، زمان محلی کاربر را دریافت کنید. ابجکت Date همچنین چندین روش برای مدیریت، دستکاری و قالب بندی تاریخ و زمان ارائه می دهد.

تاریخ و زمان در جاوا اسکریپت

ایجاد یک شیء تاریخ

قبل از شروع کار با تاریخ و زمان، باید یک شی Date ایجاد کنیم. برخلاف دیگر اشیاء ، مانند آرایه ها یا توابع، تاریخ ها شکل دقیق متناظری ندارند.تمام اشیاء تاریخ باید با استفاده از تابع سازنده Date که  ()Date می باشد ایجاد شوند.چهار روش مختلف برای ایجاد یک شی Date در جاوا اسکریپت وجود دارد.

سینتکس ( ) new Date

شما به سادگی می توانید یک شی Date جدید را بدون مقداردهی اولیه آن تعریف نمایید. در این حالت، مقدار تاریخ و زمان بر روی تاریخ و زمان فعلی در دستگاه کاربر که اسکریپت روی آن اجرا می شود، تنظیم می شود.

 سینتکس new Date(yearmonth, …)

شما همچنین می توانید یک شی Date را با پاس دادن پارامترهای زیر که با کاما از هم جدا شده اند، مقداردهی اولیه کنید: سال، ماه، روز، ساعت، دقیقه، ثانیه، و میلی ثانیه.

پارامترهای سال و ماه صروری  است ولی سایر پارامترها اختیاری هستند.

این تاریخ در واقع نشان دهنده 31 ژانویه2022 در ساعت 14:35:20 و 50 میلی ثانیه است. در صورت تمایل می توانید قسمت زمان را نادیده بگیرید و فقط قسمت تاریخ را مشخص کنید.

 سینتکس new Date(dateString)

جاوا اسکریپت همچنین به شما این امکان را می دهد که با ارسال رشته ای که یک تاریخ یا تاریخ و زمان را نشان می دهد، یک شی Date ایجاد کنید،به عنوان مثال:

این تاریخ نشان‌دهنده 31 ژانویه 2018 است. همچنین می‌توانید رشته‌هایی مانند   31  2018jan یا هر یک از تغییرات معتبر را مشخص کنید، جاوا اسکریپت به طور خودکار آن را مدیریت می‌کند.

 سینتکس new Date(milliseconds)

همچنین می‌توانید با عبور از تعداد میلی‌ثانیه‌ها از ۱ ژانویه ۱۹۷۰، در ساعت ۰۰:۰۰:۰۰ به وقت گرینویچ، یک شی Date تعریف کنید. این زمان به عنوان عصر یونیکس شناخته می شود. زیرا سال 1970 سالی بود که سیستم عامل یونیکس به طور رسمی معرفی شد.به عنوان مثال:

تاریخ فوق نشان دهنده چهارشنبه 31 ژانویه 2018 ساعت 05:30:00   GMT + 0530 میباشد.

هنگامی که نمونه ای از شی Date را ایجاد کردید، می توانید از متد های آن برای انجام کارهای مختلف مانند دریافت مؤلفه های مختلف یک تاریخ، تنظیم یا تغییر مقدار تاریخ و زمان و …استفاده نمایید. 

توجه: جاوا اسکریپت با استفاده از  میانبرهایی به نام “literals” برای ایجاد بیشتر ابجکت محلی بدون نیاز به استفاده از عملگر جدید را فراهم مینماید،مانند ()new Object()new Arrayو ….

نحوه به دست آوردن تاریخ و زمان فعلی

برای دریافت تاریخ و زمان فعلی، یک ابجکت جدید Date بدون ارسال هیچ پارامتری ایجاد کنید. این متد یک ابجکت با تاریخ و زمان فعلی را ایجاد می کند. به عنوان مثال:

خروجی این مثال چیزی شبیه به این خواهد بود (بسته به افست منطقه زمانی):

Fri Apr 22 2022 15:13:53 GMT+0430 (Iran Daylight Time)

نحوه ایجاد رشته های تاریخ و زمان در جاوا اسکریپت

ابجکت Date  جاوا اسکریپت چندین متد مانند()toDateString()toLocaleDateString و… را برای تولید رشته های تاریخ در قالب های مختلف ارائه می دهد. به عنوان مثال:

به طور مشابه، می‌توانید از متدهای()toLocaleTimeString()toTimeString  ابجکت Date برای تولید رشته‌های زمانی استفاده کنید، همانطور که در مثال زیر نشان داده شده است:

دریافت مولفه های خاص تاریخ و زمان درجاوا اسکریپت

هنگامی که یک ابجکت تاریخ دارید، تعدادی متد برای استخراج جزئیات از آن در دسترس شما می باشد، مانند ماه، تاریخ، ساعت یا مقدار دقیقه و …. بخش زیر متدهای مختلف استخراج تک تک اطلاعات را از ابجکت تاریخ نشان میدهد.

دریافت سال، ماه و تاریخ

ابجکت Date چندین متد مانند ()getFullYear()getMonth()getDay و …را ارائه می دهد که می توانید از آنها برای استخراج اجزای خاص تاریخ از ابجکت Date، مانند سال، روز از ماه، روز هفته و …استفاده کنید.. مثال زیر نشان می دهد که چگونه می توان اجزای خاص تاریخ را با استفاده از این متدها از ابجکتDate دریافت کرد:

متد  ()getDay  به جای برگرداندن نامی مانند یکشنبه یا دوشنبه، عددی را که نشان دهنده روز هفته است (از 0 تا 6) برمی گرداند، به گونه ای که اگر یکشنبه باشد، متد 0 را برمی گرداند. و اگر دوشنبه باشد، متد 1 را برمی گرداند و به همین ترتیب.

به همین ترتیب، متد ()getMonth  تعداد ماه ها (از 0 تا 11) را به جای نام ماه برمی گرداند. در اینجا 0 نشان دهنده ماه اول سال است. بنابراین، اگر ژانویه باشد، متد  0 را برمی گرداند نه 1 را. و اگر آگوست باشد متد 7 را برمی گرداند.

دریافت ساعت، دقیقه، ثانیه و میلی ثانیه

به طور مشابه، ابجکت Date متدهایی مانند()getHours()getMinutes()getSeconds()getTimezoneOffset و …را برای استخراج مولفه های زمان از ابجگت Date فراهم می کند.
به عنوان مثال:
متد  ()getHours تعداد ساعات روز (از 0 تا 23) را با توجه به ساعت 24 ساعته برمی گرداند. بنابراین، وقتی نیمه شب است، متد 0 را برگردانده. و وقتی ساعت  3:00 P.M است، این متد مقدار 15 را برمی گرداند.
توجه: اشیاء Date نیز روش هایی برای بدست آوردن مولفه های UTC دارند. فقط UTC را بعد از get  قرار دهید، مانند ()getUTCDate()getUTCHour()getUTCMinutes.

تنظیم مقادیر تاریخ و زمان در جاوا اسکریپت 

 علاوه بر بازیابی مقادیر تاریخ و زمان، می توانید این مقادیر را با استفاده از جاوا اسکریپت نیز تنظیم یا تغییر دهید. این اغلب در برنامه هایی استفاده می شود که در آن شما باید مقدار یک شیء تاریخ را از یک تاریخ یا زمان خاص به تاریخ دیگر تغییر دهید. بیایید ببینیم چگونه کار می کند.

تنظیم سال، ماه و تاریخ

 شیء Date متدهایی مانند متدهای ()setFullYear()setMonth و ()setDateرا برای تنظیم مؤلفه های سال، ماه، تاریخ شیء Date به ترتیب ارائه می کند.
به عنوان مثال، در مثال زیر از متد()setFullYear  برای تغییر تاریخ جاری ذخیره شده در یک متغیر قبل از دو سال آینده استفاده کرده ایم.

خروجی مثال بالا چیزی شبیه به این خواهد بود:

Mon Apr 22 2024 15:13:53 GMT+0430 (Iran Daylight Time)
به همین ترتیب، می توانید از متد  ()setMonth برای تنظیم یا تغییر قسمت ماه یک شی Date استفاده کنید.
متد ()setMonthبه یک مقدار صحیح از 0 تا 11 نیاز دارد، اگر مقدار ماه را بزرگتر از 11 قرار دهید، مقدار سال شی date افزایش می یابد.

به عبارت دیگر، مقدار 12 منجر به افزایش ارزش سال به میزان 1 می شود و مقدار ماه روی 0 تنظیم می شود، همانطور که در مثال زیر نشان داده شده است:

به طور مشابه، می توانید قسمت تاریخ شیء Date را مانند این تغییر دهید:

متد  ()setDate به یک مقدار صحیح از 1 تا 31 نیاز دارد. همچنین، اگر مقادیر بیشتر از تعداد روزهای ماه را ارسال کنید، ماه افزایش می یابد. مثلا:

تنظیم ساعت، دقیقه و ثانیه

متدهای تنظیم مقادیر زمان نیز بسیار ساده هستند.()setHours()setMinutes()setSeconds()setMilliseconds را می توان به ترتیب برای تنظیم ساعت، دقیقه، ثانیه و قسمت میلی ثانیه شی Date استفاده کرد.

هر متد مقادیر صحیح را به عنوان پارامتر می گیرد. محدوده ساعت ها از 0 تا 23 ، دقیقه ها و ثانیه ها از 0 تا 59 متغیر ، و میلی ثانیه ها از 0 تا 999 میباشد. به عنوان مثال:

خروجی مثال بالا چیزی شبیه به زیر خواهد بود:

Sun Jun 24 2018 08:30:45 GMT+0430 (Iran Daylight Time)
خب دوستان گرامی به پایان مبحث تاریخ و زمان در جاوا اسکریپت رسیدیم امیدواریم مورد توجه شما واقع قرار گیرد.

 

 

 

برای امتیاز به این نوشته کلیک کنید!
[کل: 0 میانگین: 0]
اشتراک‌گذاری

علی فرجی هستم، برنامه نویس جاوا اسکریپت و ریکت با بیش از 5 سال تجربه. من عاشق برنامه نویسیم و همیشه به دنبال یادگیری چیزهای جدید هستم.همچنین یکی از بنیانگذار های سایت کدایت ، یک سایت آموزش برنامه نویسی در حوزه جاوا اسکریپت، ریکت، اندروید و ... هستم. امیدوارم بتوانم با دانش و تجربه خود به سایر برنامه نویسان کمک کنم تا در این زمینه پیشرفت کنند.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *