isDateInRange( )

Verify if a date falls within a given range.

Syntax

This function is used to compare variables of type date that do not contain time elements and do not include partial dates.. When using a date/time type parameter, function considers only date part and ignores time elements.

Tip:

isDateInRange(dateToCheck, dateFrom, dateTo, inclusive)

Parameters

Parameter Required/Optional Description
dateToCheck Required Date value to evaluate if it is within range.
dateFrom Required Starting date value for the date range to evaluate.
dateTo Required Ending date value for the date range to evaluate.
inclusive Required Determines whether the range limits are included or not for the in-range evaluation. Can take any of the following options:
  • 'both': include both date limits, dateTo and dateFrom, in the range check.
    dateFrom <= dateToCheck && dateToCheck <= dateTo
  • 'from': include only dateFrom in the range check.
    dateFrom <= dateToCheck && dateToCheck < dateTo
  • 'to': include only dateTo in the range check.
    dateFrom < dateToCheck && dateToCheck <= dateTo
  • 'no': don't include date limits, dateTo nor dateFrom, in the range check.
    dateFrom < dateToCheck && dateToCheck < dateTo

Return value

Boolean (true or false) value:
  • True if date is within range.
  • False if date is out of range.

Examples

Example 3-23 Check a Date value

// Given 3 form questions of type DateTime are defined in the rule as variables
if (isDateInRange(dateToCheck, dateFrom, dateTo, "both")) {
  return true;
} else {
  return false;
}
 
// Triggers query if dateToCheck is not in range (dateFrom <= dateToCheck && dateToCheck <= dateTo)

Example 3-24 Compare three hard-coded dates

var dateToCheck = new Date("April 1, 2020");
var dateFrom = new Date("March 1, 2020");
var dateTo = new Date("March 30, 2020");
 
if (!isDateInRange(dateToCheck, dateFrom, dateTo, "both") {
  return false;
} else {
  return true;
}
 
//Triggers query since dateToCheck is not in range (dateFrom <= dateToCheck && dateToCheck <= dateTo)