Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

230
Views
Days between two dates - typescript

I need to calculate the difference in days between two dates.

In the end I need to know if a certain date has expired.

But I can't come up with a solution.

the expiredAt field, is of type datetime

Service.ts

import CheckLicenses from "../../helpers/CheckLicenses";
await CheckLicenses("valor");

CheckLicenses.ts

import License from "../models/License";
import AppError from "../errors/AppError";
import { logger } from "../utils/logger";

const CheckLicenses = async (company: string): Promise<boolean> => {
    const license = await License.findOne({
        where: { company }
    });

    if (!license) {
        throw new AppError("ERR_NO_LICENCE_FOUND", 404);
    } else {
        const { expiredAt } = license;
        const today = new Date();

        if (expiredAt <= today) throw new AppError("EXPIRED", 401);
    }
    return true;
};

export default CheckLicenses;
over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

As @Athul Joy suggested you should use Moment.js.

First install moment from npm using npm i moment.

Import moment:

import moment from 'moment';

At your else condition:

const expiredMoment = moment(expiredAt); //Cast as moment date
const currentMoment = moment(); //current moment date
if (currentMoment.diff(expiredMoment, 'days') > 0) throw new AppError("EXPIRED", 401);
over 4 years ago · Santiago Trujillo Report

0

What about trying Moment.js (https://momentjs.com/). Momen.js provides predefined functions to compare dates

over 4 years ago · Santiago Trujillo Report

0

I believe the problem is that you are comparing a string type with a date type. If you convert "expiredAt" to date then it will work

if (new Date(expiredAt) <= today) throw new AppError("EXPIRED", 401);

enter image description here

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!