DEV Community

DPC
DPC

Posted on

Daily JavaScript Challenge #JS-139: Determine Leap Year

Daily JavaScript Challenge: Determine Leap Year

Hey fellow developers! 👋 Welcome to today's JavaScript coding challenge. Let's keep those programming skills sharp!

The Challenge

Difficulty: Easy

Topic: Date Manipulation

Description

Create a function to determine if a given year is a leap year. A year is a leap year if it is divisible by 4. However, if the year is a century (divisible by 100), it must also be divisible by 400 to qualify as a leap year.

Ready to Begin?

https://www.dpcdev.com/

  1. Fork this challenge
  2. Write your solution
  3. Test it against the provided test cases
  4. Share your approach in the comments below!

Want to Learn More?

Check out the documentation about this topic here: https://en.wikipedia.org/wiki/Leap_year#Algorithm

Join the Discussion!

  • How did you approach this problem?
  • Did you find any interesting edge cases?
  • What was your biggest learning from this challenge?

Let's learn together! Drop your thoughts and questions in the comments below. 👇


This is part of our Daily JavaScript Challenge series. Follow me for daily programming challenges and let's grow together! 🚀

javascript #programming #coding #dailycodingchallenge #webdev

Top comments (5)

Collapse
 
vsaulis profile image
Vladas Saulis • Edited

const isLeapYear = new Date(year, 1, 29).getMonth() === 1;

Collapse
 
maxart2501 profile image
Massimo Artizzu
const isLeapYear = (year) => year % 4 === 0 &&
  (year % 100 !== 0 || year % 400 === 0);
Enter fullscreen mode Exit fullscreen mode
Collapse
 
rahulnainala profile image
Rahul Nainala

Const isLeapYear = (year) => {
if (year % 100 === 0) {
return year % 400 === 0;
}
return year % 4 === 0;
};

Collapse
 
kumara1987 profile image
Kumara
const isLeapYear = (year) => {
    if (year % 4 === 0) {
        if (year % 100 === 0) {
            return year % 400 === 0;
        }

        return true;
    }
    return false;
};
Enter fullscreen mode Exit fullscreen mode
Collapse
 
raptor78455 profile image
Antoine Raymond

You should avoid nested conditions at all costs.

Here is an alternative solution :

function isLeapYear(year) {
  if (year % 100 === 0) {
    return year % 400 === 0;
  }

  return year % 4 === 0;
}
Enter fullscreen mode Exit fullscreen mode