تنظیم تاریخ و زمان در جاوااسکریپت با استفاده از متد Date.setDate

javascript date setdate tutorial
20 آبان 1403

متد setDate در زبان برنامه‌نویسی جاوااسکریپت یکی از توابع کاربردی برای تغییر روز در یک شیء تاریخ است. این متد به شما امکان می‌دهد تا روز یک ماه خاص را تنظیم کنید. وقتی نیاز دارید تا روی یک تاریخ موجود تغییراتی انجام دهید، این متد می‌تواند کمک زیادی به شما کند.

مثلاً فرض کنید که شما یک تاریخ دارید و می‌خواهید به روز بعد بروید یا حتی به عقب برگردید و چند روز قبلی را مرور کنید. در این شرایط setDate ابزار مناسبی است که دست شما را برای تغییر روز باز خواهد کرد.

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

یادگیری این متد به برنامه‌نویسان کمک می‌کند تا به راحتی روزهای تاریخ‌های مختلف را در پروژه‌های خود تغییر دهند و این واقعاً می‌تواند در پیاده‌سازی‌های پیچیده‌تر کار شما را ساده‌تر کند.

به طور مثال، شما می‌توانید با اتصال این متد به تغییرات کاربری مثل رویدادهای کلیک، به صورت داینامیک نمایش تاریخ را تغییر دهید.

نمونه کد استفاده از Date.setDate

<script>
let date = new Date();
console.log("تاریخ اولیه:", date);

date.setDate(date.getDate() + 1);
console.log("تاریخ روز بعد:", date);

date.setDate(date.getDate() - 3);
console.log("سه روز قبل:", date);
</script>

توضیح کد به صورت خط به خط

let date = new Date();
یک شیء تاریخ جدید بر اساس تاریخ و زمان فعلی ایجاد می‌کند.

console.log("تاریخ اولیه:", date);
تاریخ اولیه ایجاد شده را در کنسول چاپ می‌کند.

date.setDate(date.getDate() + 1);
روز تاریخ را یک واحد افزایش می‌دهد و آن را به روز بعد منتقل می‌کند.

console.log("تاریخ روز بعد:", date);
تاریخ جدید که با افزایش یک روز به دست آمده را در کنسول چاپ می‌کند.

date.setDate(date.getDate() - 3);
سه روز از تاریخ فعلی کم می‌کند و به سه روز قبل می‌رود.

console.log("سه روز قبل:", date);
تاریخ جدید که به سه روز قبل برگشته، در کنسول چاپ می‌شود.

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

؟

چگونه می‌توان روز تاریخ را به صورت داینامیک تغییر داد؟

؟

آیا می‌توان به طور مستقیم به ماه یا سال نیز تغییر داد؟

؟

اگر روزی بیشتر از تعداد روزهای ماه وارد کنیم، چه اتفاقی می‌افتد؟