Last active
November 12, 2020 00:24
-
-
Save Nethanos/bdb6449d7249c6ce51ca8950ac9dd7a0 to your computer and use it in GitHub Desktop.
Transform milisseconds in a day, hour, minute or second in Typescript!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* This code was originally implemented by @fargolas in pure JS https://gist.github.com/flangofas/714f401b63a1c3d84aaa | |
* | |
* This is a typescript adapted to project version. | |
*/ | |
export interface DateConverted { | |
days: number, | |
hours: number, | |
minutes: number, | |
seconds: number; | |
} | |
export default function convertMiliseconds(miliseconds: number, format?: string): number | DateConverted { | |
let dateConverted = {} as DateConverted; | |
const totalSeconds = Math.floor(miliseconds / 1000); | |
const totalMinutes = Math.floor(totalSeconds / 60); | |
const totalHours = Math.floor(totalMinutes / 60); | |
dateConverted.days = Math.floor(totalHours / 24); | |
dateConverted.seconds = totalSeconds % 60; | |
dateConverted.minutes = totalMinutes % 60; | |
dateConverted.hours = totalHours % 24; | |
switch(format) { | |
case 's': | |
return totalSeconds; | |
case 'm': | |
return totalMinutes; | |
case 'h': | |
return totalHours; | |
case 'd': | |
return dateConverted.days; | |
default: | |
return dateConverted; | |
} | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment