MATIN MOLKARA
SERIES: JavaScript — PART 12 OF 108

12- آموزش جاوااسکریپت | کار با شیء تاریخ (Date Object)

در این آموزش به بررسی شیء Date در جاوااسکریپت می‌پردازیم. یاد می‌گیریم چگونه تاریخ‌های فعلی و دلخواه را ایجاد کنیم، از متدهای Get برای دریافت اطلاعات زمانی استفاده کنیم و با متدهای Set، تاریخ‌ها را تغییر دهیم.

مدیریت تاریخ و زمان یکی از نیازهای اساسی در هر پروژه‌ای است. جاوااسکریپت شیء داخلی به نام Date را برای این منظور فراهم کرده است. Date یک نوع داده ارجاعی (Reference Type) و در واقع یک Object است.


ایجاد شیء تاریخ (Instantiating)

ساده‌ترین راه برای دریافت تاریخ و زمان حال، استفاده از متد سازنده new Date() است:

const today = new Date();
console.log(today); // نمایش تاریخ و زمان فعلی سیستم
console.log(typeof today); // "object"

برای ایجاد یک تاریخ خاص، می‌توانید مقادیر مختلفی را به سازنده پاس دهید:

// روش‌های مختلف تعریف تاریخ
const birthday = new Date('10-23-1989');
const specificDate = new Date('October 23 1989 11:25:00');

دریافت اطلاعات زمانی (Getters)

برای استخراج بخش‌های مختلف تاریخ، از متدهای Get استفاده می‌کنیم. نکته بسیار مهم این است که ماه در جاوااسکریپت صفر-محور (Zero-based) است؛ یعنی 0 برابر با ژانویه و 11 برابر با دسامبر است.

const date = new Date();

console.log(date.getMonth());     // دریافت ماه (0-11)
console.log(date.getDate());      // دریافت روز ماه
console.log(date.getDay());       // دریافت روز هفته (0=یکشنبه، 1=دوشنبه و...)
console.log(date.getFullYear());  // دریافت سال چهار رقمی
console.log(date.getHours());     // دریافت ساعت
console.log(date.getMinutes());   // دریافت دقیقه
console.log(date.getSeconds());   // دریافت ثانیه
console.log(date.getMilliseconds()); // دریافت میلی‌ثانیه
console.log(date.getTime());      // دریافت Timestamp (تعداد میلی‌ثانیه‌ها از 1 ژانویه 1970)

تغییر تاریخ (Setters)

علاوه بر دریافت مقادیر، می‌توانیم بخش‌های مختلف یک شیء Date را نیز تغییر دهیم. متدهای Set مستقیماً آبجکت موجود را تغییر می‌دهند (Mutate):

const myDate = new Date('10-23-1989');

myDate.setMonth(2);       // تغییر ماه به مارس
myDate.setDate(12);       // تغییر روز به 12
myDate.setFullYear(1985); // تغییر سال به 1985
myDate.setHours(3);       // تغییر ساعت به 3
myDate.setMinutes(30);    // تغییر دقیقه به 30

console.log(myDate); // نمایش تاریخ تغییر یافته

نکات کلیدی

  1. Zero-based بودن ماه‌ها: این موضوع رایج‌ترین منبع خطا برای توسعه‌دهندگان مبتدی است. همیشه به یاد داشته باشید که ماه ژانویه 0 است.
  2. Timestamp: متد getTime() برای محاسبات زمانی (مثلاً محاسبه فاصله بین دو تاریخ) بسیار مفید است، زیرا یک عدد مطلق را برمی‌گرداند.
  3. مستندات: برای مشاهده تمامی متدهای موجود، مطالعه مستندات MDN (Mozilla Developer Network) برای شیء Date اکیداً توصیه می‌شود.

جمع‌بندی

در این بخش آموختیم:

  • نحوه ایجاد شیء تاریخ با new Date().
  • تفاوت بین نوع داده Date و String.
  • استفاده از متدهای Get برای استخراج اجزای تاریخ و زمان.
  • مدیریت ماه‌های صفر-محور.
  • استفاده از متدهای Set برای ویرایش یک تاریخ موجود.

در آموزش بعدی، به سراغ ساختارهای کنترلی (Control Structures)، شامل دستورات شرطی (if statements) و عملگرهای مقایسه‌ای می‌رویم.

// 0 comments
#جاوااسکریپت#Date Object#تاریخ و زمان#متدهای Date#برنامه نویسی#آموزش جاوااسکریپت#JavaScript

نظرات (0)

نظر خود را بنویسید