DEV Community

DPC
DPC

Posted on

9 3 2 3 4

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

Dynatrace image

Frictionless debugging for developers

Debugging in production doesn't have to be a nightmare.

Dynatrace reimagines the developer experience with runtime debugging, native OpenTelemetry support, and IDE integration allowing developers to stay in the flow and focus on building instead of fixing.

Learn more

Top comments (5)

Collapse
 
rahulnainala profile image
Rahul Nainala •

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

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
 
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

Gen AI apps are built with MongoDB Atlas

Gen AI apps are built with MongoDB Atlas

MongoDB Atlas is the developer-friendly database for building, scaling, and running gen AI & LLM apps—no separate vector DB needed. Enjoy native vector search, 115+ regions, and flexible document modeling. Build AI faster, all in one place.

Start Free

AWS GenAI LIVE!

GenAI LIVE! is a dynamic live-streamed show exploring how AWS and our partners are helping organizations unlock real value with generative AI.

Tune in to the full event

DEV is partnering to bring live events to the community. Join us or dismiss this billboard if you're not interested. ❤️