کار با تاریخ‌ها در جاوااسکریپت

javascript date getmonth tutorial
20 آبان 1403

تاریخ و زمان از مفاهیم پایه و بسیار کاربردی در برنامه‌نویسی هستند، که در بسیاری از پروژه‌های وب از آنها استفاده می‌شود. جاوااسکریپت توابع و متدهای مختلفی برای کار با زمان ارائه می‌دهد که یکی از آنها متد getMonth() می‌باشد. با استفاده از این متد می‌توانیم ماه مربوط به یک تاریخ خاص را به دست بیاوریم.

روش کار این متد بدین شکل است که از صفر شروع می‌کند. به این معنا که ماه ژانویه به عنوان ماه صفر و ماه دسامبر به عنوان ماه یازده شناخته می‌شود. این موضوع می‌تواند در استفاده اولیه باعث بروز اشتباه شود، اما با کمی تمرین، کار با آن ساده‌تر خواهد شد.

برای استفاده از این متد، ابتدا باید یک شی جدید Date ایجاد کرده و سپس getMonth() را برای این شی فراخوانی کنید. این روش در دریافت و مدیریت تاریخ و زمان در جاوااسکریپت به ما کمک می‌کند تا بتوانیم تاریخ‌های مختلف را به خوبی مدیریت کنیم.

بیایید یک مثال ساده از استفاده از این متد را بررسی کنیم. فرض کنید می‌خواهیم ماه فعلی مربوط به دستگاه کاربران را به دست آوریم و آن را به نمایش بگذاریم. می‌توانیم با اجرای یک کد ساده به این هدف برسیم:

const currentDate = new Date();
const currentMonth = currentDate.getMonth();
console.log(currentMonth);

در این قطعه کد:

  • const currentDate = new Date(); این خط کد یک شیء جدید از تاریخ حال حاضر بر اساس زمان محلی دستگاه ایجاد می کند.
    به عبارت دیگر، با اجرای این کد به تاریخ و زمان کنونی در سیستم دسترسی پیدا می‌کنیم.
  • const currentMonth = currentDate.getMonth(); با استفاده از متد getMonth() ماه کنونی به صورت عددی (از صفر تا یازده) بازگردانده می‌شود.
    اینجا، عدد بازگشتی به متغیر currentMonth تخصیص داده شده است.
  • console.log(currentMonth); در این خط خروجی متغیر currentMonth به کنسول ثبت می‌شود تا قابل مشاهده باشد.
    با این روش می‌توانیم ببینیم که شماره ماه جاری کدام است (۰ برای ژانویه، ۱ برای فوریه، و الی آخر).

در برنامه‌های واقعی ممکن است نیاز باشد تا عدد ماه را به فرمت متنی (مانند "ژانویه" یا "فوریه") تبدیل کنیم. برای این کار می‌توانیم از آرایه‌ای از نام‌های ماه‌ها استفاده کرده و با استفاده از اندکس ماه کنونی به نام آن دسترسی پیدا کنیم.

سوالات متداول

؟

چگونه ماه کنونی سیستم را با نام به دست آورم؟

؟

چرا getMonth() ماه صفر را باز می‌گرداند؟

؟

آیا می‌توان این ماه را به فرمت متنی تبدیل کرد؟