How to clone a Date object?

datetime, javascript

Solution

Use the Date object's `getTime()` method, which returns the number of milliseconds since 1 January 1970 00:00:00 UTC (epoch time):

var date = new Date();
var copiedDate = new Date(date.getTime());

In Safari 4, you can also write:

var date = new Date();
var copiedDate = new Date(date);

...but I'm not sure whether this works in other browsers. (It seems to work in IE8).

Problem

Assigning a `Date` variable to another one will copy the reference to the same instance. This means that changing one will change the other. How can I actually clone or copy a `Date` instance?

Original source