JavaScript — Check if a Date is on a Weekend or Weekday

Working with dates may involve checking whether a given date is a weekday or a weekend. For example, you don’t want to send an email on weekends but on weekdays, and vice versa. This tutorial shows you how to determine whether a given JavaScript date is a weekend or weekday.

Node.js Series Overview

  1. String Replace All Appearances
  2. Remove All Whitespace From a String in JavaScript
  3. Generate a Random ID or String in Node.js or JavaScript
  4. Remove Extra Spaces From a String in JavaScript or Node.js
  5. Remove Numbers From a String in JavaScript or Node.js
  6. Get the Part Before a Character in a String in JavaScript or Node.js
  7. Get the Part After a Character in a String in JavaScript or Node.js
  8. How to Check if a Value is a String in JavaScript or Node.js
  9. Check If a String Includes All Strings in JavaScript/Node.js/TypeScript
  10. Check if a Value is a String in JavaScript and Node.js
  11. Limit and Truncate a String to a Given Length in JavaScript and Node.js
  12. Split a String into a List of Characters in JavaScript and Node.js
  13. How to Generage a UUID in Node.js
  14. Reverse a String in JavaScript or Node.js
  15. Split a String into a List of Lines in JavaScript or Node.js
  16. Split a String into a List of Words in JavaScript or Node.js
  17. Detect if a String is in camelCase Format in Javascript or Node.js
  18. Check If a String Is in Lowercase in JavaScript or Node.js
  19. Check If a String is in Uppercase in JavaScript or Node.js
  20. Get the Part After First Occurrence in a String in JavaScript or Node.js
  21. Get the Part Before First Occurrence in a String in JavaScript or Node.js
  22. Get the Part Before Last Occurrence in a String in JavaScript or Node.js
  23. Get the Part After Last Occurrence in a String in JavaScript or Node.js
  24. How to Count Words in a File
  25. How to Shuffle the Characters of a String in JavaScript or Node.js
  26. Append Characters or Words to a String in JavaScript or Node.js
  27. Check if a String is Empty in JavaScript or Node.js
  28. Ensure a String Ends with a Given Character in JavaScript or Node.js
  29. Left-Trim Characters Off a String in JavaScript or Node.js
  30. Right-Trim Characters Off a String in JavaScript or Node.js
  31. Lowercase the First Character of a String in JavaScript or Node.js
  32. Uppercase the First Character of a String in JavaScript or Node.js
  33. Prepend Characters or Words to a String in JavaScript or Node.js
  34. Check if a String is a Number
  35. Convert a String to Buffer
  36. Prevent Line Breaks in String Template Literals
  37. How to Implement a Custom `toString` Method
  38. What Is `Symbol.toStringTag` and How to Use It

Check if a Date is on a Weekend in JavaScript

The following code snippet outlines how to check whether a given date is on a weekend. We’re using the Date#getDay function to retrieve the number for the day of the week. This number is according to the local time and represents a day between 0 and 6:

  • 0=Sunday
  • 1=Monday
  • 2=Tuesday
  • 6=Saturday

The numbers for Saturday 6 and Sunday 0 are a multiple of 6 and we can use the modulo operator to check for a remainder of 0 to detect the weekend:

function isWeekend(date) {  
  if (date instanceof Date) {
    return date.getDay() % 6 === 0
  }

  throw new Error('Cannot check if date is weekend: [date] parameter is not a Date')
}

Check if a Date is a Weekday in JavaScript

For weekdays, we’re using Date#getDay as well to retrieve the number for the day of the week. This time we’re checking for a remainder other than 0 to detect the days Monday to Friday:

function isWeekday(date) {  
  if (date instanceof Date) {
    return date.getDay() % 6 !== 0
  }

  throw new Error('Cannot check if date is week day: [date] parameter is not a Date')
}

That’s it!


Mentioned Resources

Explore the Library

Find interesting tutorials and solutions for your problems.