Another mention question from library territory. If this is your first visit, one of the things I do here on the blog is to answer questions that I get at work while on the reference desk.

Today the question was, casually put, “**How many seconds in one day**?”

Let’s do some math.

60 minutes x 60 minutes = 3600 seconds in 1 hour.

3600 seconds x 24 hours = 86,400 seconds in one day.

If like me, mathematics doesn’t come naturally to you and you are looking for better, I highly recommend the math videos at the Khan Academy.

Now that you know how *many seconds in have been in a day*, use your powers for good!

## How many seconds in a minute?

Sixty, and no longer in it.

## How many minutes in an hour?

Sixty for sun and shower.

## How many hours in a day?

Twenty-four for play and work.

## How many times per week?

Seven both to listen to and speak.

## How many weeks in a month?

Four, as the swift moon runn’th.

## How many months in a year?

Twelve, the almanac makes clear.

## Just how many years of an age?

One hundred, says the sage.

## How many ages in time?

Nobody understands the thought.

Regrettably, I lately did not withstand the temptation. If you’ve ever worked with JavaScript and Dates you know how incredibly painful it could be. (If you happen to know a fantastic reason for this design choice I would really like to understand it).

What we needed to do was to calculate the number of days between two specified dates.

Sounds simple enough, even with all the awkward Date interface you can certainly work out that it should be possible to find a number of milliseconds between two dates and turn that into a variety of days.

The code looked something like this:

**var** firstDate = **new** Date(2012,9,12);

**var** lastDate = **new** Date(2012,9,20);

**var** difference = lastDate.getTime() – firstDate.getTime();

**var** dayInMilliseconds = 1000 * 60 * 60 * 24;

**var** days = difference / dayInMilliseconds;

It’s all pretty straight forward before you actually begin testing the code and happen to enter marginally different dates.

Suppose we consider the 29th of October (yes, the 9th month in JavaScript). Suddenly a number of times begin looking a bit odd. Figuring out that our first assumption about the number of milliseconds every day is mostly correct.

Only occasionally it is not. This just happened to have been composed in the UK where we observe DST, which finishes on the 28th

**var** firstDate = **new** Date(2012,9,27);**var** lastDate = **new** Date(2012,9,29); **var** difference = lastDate.getTime() – firstDate.getTime(lastDate.getTimezoneOffset() – firstDate.getTimezoneOffset()) * 60 * 1000;**var** dayInMilliseconds = 1000 * 60 * 60 * 24; **var** days = difference / dayInMilliseconds;

It is probably a slightly better solution. That’s until we find there’s something called a leap second.

## How to convert seconds to days

There is a simple formula used if you want to convert second to days. We divide the number of seconds by 86,400 to get the number of days.

Days = seconds ÷86,400

For example, Convert 98,400 seconds to days

Solution

If 1 day = 86,400 seconds

? Days = 98,400 seconds?

= 98,400 / 86,400

= 1.138889 days

You can also use the Seconds to Day converter as it gives the corresponding values in days when converting from seconds. This conversion calculator will be useful when you have large values in seconds that are to be converted to days. If you want to determine how *many seconds in a day*, we multiply the number of seconds in one hour by the number of hours in one day.