I need a function to transform decimal values of years in years, months and days. Ex: 1.5 years = 1 year, 6 month. 2.2527397260273973 years = 2 years, 3 months and 1 day.
I started with this function:
function yearsToYearsMonthsDays(value){
var years = Math.floor(value);
var months = Math.floor( (value - years) /(1/12) );
var days = Math.floor ( ( (value - years) /(1/12) - Math.floor((value - years) /(1/12)) ) / (1/365) );
var result = years + " years, " + months + " months, " + days + " days";
Logger.log(result);
}
But sometimes it doesn't work (ex: 0.75 doesn't produces 9 months).
Any help?