# How to convert seconds (decimal value) into minutes:seconds:miliseconds (if seconds > 60)

Community Beginner ,
Aug 16, 2018 Aug 16, 2018

Copied

I have a variable that is in decimal seconds.

Example: 92.5

How do I convert it to 1:32:50?

TOPICS
Acrobat SDK and JavaScript

Views

161

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more

Most Valuable Participant , Aug 16, 2018 Aug 16, 2018
Then you can use this code:var v = 92.5;var minutes = Math.floor(v/60);v-=(minutes*60);var seconds = Math.floor(v);var remainder = (v-seconds)*100;var result = minutes + ":" + seconds + ":" + remainder;

Likes

12 Replies 12
Most Valuable Participant ,
Aug 16, 2018 Aug 16, 2018

Copied

So 0.5 is 50 seconds? Not 30?

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Most Valuable Participant ,
Aug 16, 2018 Aug 16, 2018

Copied

Or is that in hundreds of a second?

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Most Valuable Participant ,
Aug 16, 2018 Aug 16, 2018

Copied

Also, can the value exceed one hour? If so, do you want to display that separately, or just as minutes?

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Community Beginner ,
Aug 16, 2018 Aug 16, 2018

Copied

Sorry, 92.5 is 1:32.50 (that is 1 minute 32 seconds and 50 milliseconds)

and the value will never exceed 1 hour.

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Most Valuable Participant ,
Aug 16, 2018 Aug 16, 2018

Copied

Then you can use this code:

`var v = 92.5;var minutes = Math.floor(v/60);v-=(minutes*60);var seconds = Math.floor(v);var remainder = (v-seconds)*100;var result = minutes + ":" + seconds + ":" + remainder;`

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Community Beginner ,
Aug 16, 2018 Aug 16, 2018

Copied

thank you so very much!!

One last question:

How do I limit milliseconds to just 2 digits?

Since my input is a variable, I, sometimes, get something like 1:32.50.00000000045

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Most Valuable Participant ,
Aug 16, 2018 Aug 16, 2018

Copied

Change this:

var remainder = (v-seconds)*100;

To:

var remainder = Math.round((v-seconds)*100);

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Community Beginner ,
Aug 16, 2018 Aug 16, 2018

Copied

THANKS!!!

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Community Beginner ,
Aug 17, 2018 Aug 17, 2018

Copied

Hi try67,

How difficult is it to find a solution to the next little bug:

if "seconds" end up being between 1 and 9, Adobe omitting the zero,

and the result looks like: 1:2.55 instead of 1:02.55

Did I say I really appreciate your help?

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Most Valuable Participant ,
Aug 18, 2018 Aug 18, 2018

Copied

Use this:

`var v = 92.5; var minutes = Math.floor(v/60); v-=(minutes*60); var seconds = Math.floor(v);var secondsStr = (seconds<10) : "0"+seconds ? ""+seconds;var remainder = Math.round((v-seconds)*100);var result = minutes + ":" + secondsStr + ":" + remainder;`

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Community Beginner ,
Aug 18, 2018 Aug 18, 2018

Copied

For some reason, it keeps giving me the syntax error.

I checked all of the punctuation and it doesn't make any sense.

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Community Beginner ,
Aug 18, 2018 Aug 18, 2018

Copied

LATEST

UPDATE: SOLVED

Did this:

var minutes = Math.floor(v/60);

v-=(minutes*60);

var seconds = Math.floor(v);

var secondsStr = seconds;

if(seconds<10) {secondsStr="0"+seconds;}

else {secondsStr=""+seconds;}

var remainder = Math.round((v-seconds)*100);

var result = minutes + ":" + secondsStr + "." + remainder;

Likes

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more