JavaScript | date.valueOf() function

The date.valueOf() is an inbuilt function in JavaScript which is used to get the number of milliseconds between 1 January 1970 00:00:00 UTC and the given date.
Syntax:

dateObj.valueOf()

Note: In the above syntax, DateObj is a valid Date object created using Date() conctructor whose contents are used to get the number of milliseconds between 1 January 1970 00:00:00 UTC and the given date as the contents of the Date() constructor.

    Parameters:

  • This function does not takes any parameter. It is just used along with a Date object created using Date() conctructor.
  • Return Values:

  • It returns the number of milliseconds between 1 January 1970 00:00:00 UTC and the given date as the contents of the Date() constructor.

Below program illustrate the date.valueOf() function:-

filter_none

edit
close

play_arrow

link
brightness_4
code

<script>
// Here a date has been assigned
// while creating Date object
var dateobj = new Date('October 15, 1996 05:35:32');
  
// Getting the number of milliseconds between 1 January 1970 00:00:00
// UTC and the given date as the content of the above Date() constructor.
var B = dateobj.valueOf();
  
// Printing the calculated number of milliseconds.
document.write(B);
</script>

chevron_right


Output:

> 845337932000

    Errors and Exceptional cases associated with this function.

  1. If nothing as parameter is passed while creating date object but still valueOf() function returns the number of milliseconds between 1 January 1970 00:00:00 UTC and the current date.
    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    <script>
    // Here nothing has been assigned
    // while creating Date object
    var dateobj = new Date();
      
    // Getting the number of milliseconds between 1 January 1970 00:00:00
    // UTC and the current date.
    var B = dateobj.valueOf();
      
    // Printing the calculated number of milliseconds.
    document.write(B);
    </script>

    chevron_right

    
    

    Output:

    > 1524387231290
  2. Date of a month ranging between 1 to 31. If the date is taken as 35 which is out of the date range, it returns NaN i.e, not a number.
    filter_none

    edit
    close

    play_arrow

    link
    brightness_4
    code

    <script>
    // Here a date has been assigned
    // while creating Date object
    var dateobj = new Date('October 35, 1996 05:35:32');
      
    // Getting the number of milliseconds between 1 January 1970 00:00:00
    // UTC and the given date.
    var B = dateobj.valueOf();
      
    // Printing the calculated number of milliseconds.
    document.write(B);
    </script>

    chevron_right

    
    

    Output:

    > NaN

Some Important Points:

  • Months, Dates, hours, minutes, seconds, milliseconds should all be in their respective range.Otherwise valueOf() function returns NaN i.e, not a number.
  • Range of Months, Dates, hours, minutes, seconds, milliseconds are 0 to 11, 1 to 31, 0 to 23, 0 to 59, 0 to 59, 0 to 999 respectively.


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.