Solved

Javascript date/time adding/subtracting

Posted on 2009-05-19
2
1,152 Views
Last Modified: 2012-05-07
I know this has been posted before, but I can't seem to find it.  I am doing some adding and subtracting of dates and need to display them on the screen in an HTML format.  If, for example, I have the date

02/03/09 3:15 a.m. and need to subtract 5 hours from it (the number of hours will vary), how can I do this and make sure the date/time are truly a real date and time in the past?
0
Comment
Question by:saturation
2 Comments
 
LVL 41

Expert Comment

by:HonorGod
ID: 24425713
In JavaScript, there is a wonderful thing called a Date object.
You can instantiate it and provide a specific date/time.

For example:

  var when = new Date( '02/03/09 3:15 am' )

This datatype has many methods that can be used for extracting different parts of the date.

For example:



<html>
<body>
 
<script type="text/javascript">
 
var when = new Date( '02/03/09 3:15 am' )
 
function D2( val ) {
  return ( val < 10 ) ? '0' + val : val
}
  
document.write( D2( when.getMonth() + 1 ) + '/' +
                D2( when.getDate() ) + '/' + 
                D2( when.getYear() ) + '<br>'
              )
 
document.write( when + '<br>' )
 
var before = when
before.setHours( before.getHours() - 5 )
 
document.write( D2( before.getMonth() + 1 ) + '/' +
                D2( before.getDate() ) + '/' + 
                D2( before.getYear() ) + '<br>'
              )
              
document.write( before + '<br>' )
 
</script>
 
</body>
</html>

Open in new window

1
 
LVL 40

Accepted Solution

by:
Richard Quadling earned 500 total points
ID: 24425760
Javascript dates are held as whole days with the decimal part being in milliseconds.1 day = 86 400 000 millisecondsSo, 5 hours = 5 * 60 * 60 * 1000
<html>
<head>
<title>Demo date</title>
<script type="text/javascript">
var o_Date = new Date();
 
alert(o_Date);
 
o_Date.setTime(o_Date - 5 * 60 * 60 * 1000);
 
alert(o_Date);
</script>
</head>
</html>

Open in new window

0

Featured Post

ScreenConnect 6.0 Free Trial

Explore all the enhancements in one game-changing release, ScreenConnect 6.0, based on partner feedback. New features include a redesigned UI, app configurations and chat acknowledgement to improve customer engagement!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

When you need to keep track of a simple list of numbers or strings, the Array object is your most direct tool.  As we saw in my earlier EE Article (http://www.experts-exchange.com/A_3488.html), typical array handling might look like this: (CODE) B…
This article demonstrates how to create a simple responsive confirmation dialog with Ok and Cancel buttons using HTML, CSS, jQuery and Promises
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

778 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question