date validator

by Arvind Pal

JavaScript

const validateDate = (date) => {
  const errorList = [];
  const fourDigitYearReg = /^[1-4]Q[1-9][0-9]{3}$/;
  const twoDigitYearReg = /^[1-4]Q[0-9]{2}$/;

  if (date.length === 6) {
    if (fourDigitYearReg.test(date)) {
      console.log("test paasd")
    } else {
      errorList.push({
        id: "dateRange",
        message: "Not a valid date formate"
      })
    }
  }
  if (date.length === 4) {
    if (twoDigitYearReg.test(date)) {
      console.log("test paasd 4 digit")
    } else {
      errorList.push({
        id: "dateRange",
        message: "Not a valid date formate"
      })
    }
  }

  if (date.length === 10) {
    console.log("date in length 8", date)
    const dateValue = new Date(date);
    console.log("dateValue", dateValue)
    if (dateValue == "Invalid Date") {
      errorList.push({
        id: "dateRange",
        message: "Not a valid date formate"
      })
    }
  }
  
  if(date.length===7){
  	let  splittedValue = date.split("/");
    splittedValue = splittedValue[0]+"/01/"+splittedValue[1];
    console.log("splittedValue", splittedValue)
    if(new Date(splittedValue)== "Invalid Date"){
     errorList.push({
        id: "dateRange",
        message: "Not a valid date formate 7"
      })
    }
  }
  if(date.length===5){
  	let  splittedValue = date.split("/");
    splittedValue = splittedValue[0]+"/01/20"+splittedValue[1];
    console.log("splittedValue", splittedValue)
    if(new Date(splittedValue)== "Invalid Date"){
     errorList.push({
        id: "dateRange",
        message: "Not a valid date formate 5"
      })
    }
  }

  return errorList;
};

console.log(validateDate("12/94"))