چطور در جاوااسکریپت کبیسه بودن یک سال میلادی را پیدا کنیم؟
mohsen•1 سال قبل•9 ماه قبل
ارسال شده در
mohsenدر این آموزش کوتاه، با نحوهی تشخیص سال کبیسه در جاوااسکریپت آشنا میشویم. این قابلیت زمانی کاربرد دارد که بخواهیم محاسبات تقویمی دقیق انجام دهیم یا تفاوت سالها را بهدرستی محاسبه کنیم (مثلاً در اپهای تقویم، مدیریت حقوق یا گزارشهای سالانه).
طبق تقویم میلادی (Gregorian calendar)، هر ۴ سال یکبار سال کبیسه است، بهجز سالهایی که بر ۱۰۰ بخشپذیرند، مگر اینکه بر ۴۰۰ هم بخشپذیر باشند. مثلاً:
- سال ۲۰۲۰ کبیسه است ✅
- سال ۱۹۰۰ کبیسه نیست ❌
- سال ۲۰۰۰ کبیسه است ✅
برای پیدا کردن کبیسه بودن یک سال میلادی در جاوااسکریپت دو راه وجود دارد:
1. بوسیله تابع زیر که ورودی سال را میگیرد و در صورت کبیسه بودن مقدار true بر می گرداند
function leapYear(year)
{
return ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0);
}
console.log(isLeapYear(2024)); // true
2. چک کردن 29 روزه بودن ماه فوریه (February):
function isLeap(year) {
return new Date(year, 1, 29).getDate() === 29;
}
console.log(isLeapYear(2023)); // false
هر دو روش دقیق هستند، اما روش دوم با استفاده از Date داخلی زبان، سادهتر به نظر میرسد.
رای
0
ارسال نظر
مرتب سازی:
اولین نفری باشید که نظر می دهید!