MDN wants to talk to developers like you: https://qsurvey.mozilla.com/s3/8d22564490d8

Date

Deze vertaling is niet volledig. Help dit artikel te vertalen vanuit het Engels.

Creëert een JavaScript Date instantie welke een enkel punt in tijd voorstelt. Date objecten zijn gebaseerd op een tijdwaarde die gelijk staat aan het aantal milliseconden sinds 1 January, 1970 UTC.

Syntax

new Date();
new Date(value);
new Date(dateString);
new Date(year, month[, day[, hour[, minutes[, seconds[, milliseconds]]]]]);

Note: JavaScript Date kan enkel worden geïnstantieerd door JavaScript Date als een constructor aan te roepen: het aanroepen als een gewone functie (bijv. zonder de new operator) zal een string terug geven in plaats van een Date object; anders dan andere JavaScript object types, hebben JavaScript Date objecten geen literaire syntax.

Parameters

Note: Indien Date wordt aangeroepen als een constructor met meer dan een argument, als waarden groter zijn dan hun logische reeks (bij. 13 wordt gegeven als waarde voor de maand of 70 voor als waarde voor de minuut), wordt de naastgelegen waarde aangepast. Bijvoorbeeld new Date(2013, 13, 1) staat gelijk aan new Date(2014, 1, 1), beide creëren een datum voor 2014-02-01 (let er op dat de maand vanaf 0 telt). Gelijkwaardig voor andere waarden: new Date(2013, 2, 1, 0, 70) is gelijk aan new Date(2013, 2, 1, 1, 10) waarvan beide een datum voor 2013-03-01T01:10:00.

Note: Waar Date wordt aangeroepen als een constructor met meer dan een argument, staan de opgegeven argumenten voor lokale tijd. Als UTC gewenst is, gebruik dan new Date(Date.UTC(...)) met dezelfde argumenten.

value
Nummerieke waarde welke het aantal milliseconden voorstelt vanaf 1 January 1970 00:00:00 UTC (Unix Tijdperk; maar hou er rekening mee dat de meeste Unix tijd functies in seconden tellen).
dateString
Tekstuele weergave van de datum. De tekst moet een formaat hebben dat wordt herkend door de Date.parse() methode (IETF-compliant RFC 2822 timestamps en ook een versie van ISO8601).

Note: ontleding van datum teksten met de Date constructor (of Date.parse, ze zijn gelijkwaardig) wordt sterk afgeraden vanwege browser verschillen en inconsistenties.

year
Nummerieke voorstelling van het jaar. Waarden van 0 tot 99 komen overeen met de jaren 1900 tot 1999. Zie het voorbeeld beneden.
month
Nummerieke voorstelling van de maand, beginnend met 0 voor januari tot 11 voor december.
day
Optioneel. Nummerieke voorstelling van de dag van de maand.
hour
Optioneel. Nummerieke voorstelling van het uur van de dag.
minute
Optioneel. Nummerieke voorstelling van het minuut segment van een tijd.
second
Optioneel. Nummerieke voorstelling van het seconde segment van een tijd.
millisecond
Optioneel. Nummerieke voorstelling van het milliseconde segment van een tijd.

Omschrijving

  • Als er geen argumenten worden gegeven, zal een JavaScript Date object worden gemaakt volgens de huidige tijd en systeeminstellingen.
  • Als er ten minste twee argumenten worden gegeven, worden ontbrekende argumenten op 1 gezet (als de dag ontbreekt) of 0 voor alle andere.
  • De Javascript datum is gebaseerd op een tijdswaarde dat het aantal milliseconden voorstelt sinds 01 January, 1970 UTC. Een dag bevat 86,400,000 milliseconden. Het JavaScript Date object heeft een waarde reeks van -100,000,000 dagen tot 100,000,000 dagen relatief aan 01 January, 1970 UTC.
  • Het JavaScript Date object biedt uniform gedrag over platforms. De tijdswaarde kan doorgegeven worden tussen systemen om hetzelfde punt in tijd voor te stellen en indien gebruikt in een lokale datum object, zal deze het locale equivalent van de tijd weergeven.
  • Het JavaScript Date object een aantal UTC (universal) functies, evenals locale tijd functies. UTC, ook bekend als Greenwich Mean Time (GMT), refereerd naar de tijd zoals bepaald door de World Time Standard. De lokale tijd is de tijd zoals bekend bij de computer waar JavaScript wordt uitgevoerd.
  • Het aanroepen van JavaScript Date als een functie (ofwel, zonder de new operator) zal een tekstreeks terug geven die de huidige datum en tijd weergeeft.

Eigenschappen

Date.prototype
Staat het toe om eigenschappen toe te voegen aan het JavaScript Date object.
Date.length
De waarde van Date.length is 7. Dit is het aantal argumenten wat door de constructor wordt verwerkt.

Methodes

Date.now()
Geeft de nummerieke waarde van de huidige tijd - het aantal milliseconden verlopen sinds 1 January 1970 00:00:00 UTC.
Date.parse()
Verwerkt een tekstuele representaie van een datum en geeft het aantal milliseconden terug vanaf 1 January, 1970, 00:00:00, UTC.

Note: Parsing of strings with Date.parse is strongly discouraged due to browser differences and inconsistencies.

Date.UTC()
Accepteert de zelfde parameters als de langste vorm van de constructor (ofwel 2 tot 7) en geeft het aantal milliseconden terug vanaf 1 January, 1970, 00:00:00 UTC.

JavaScript Date instanties

Alle Date instanties erven van Date.prototype. Het prototype object van de Date constructor kan aangepast worden om alle Date instanties te beïnvloeden.

Date.prototype Methodes

Getter

Date.prototype.getDate()
Returns the day of the month (1-31) for the specified date according to local time.
Date.prototype.getDay()
Returns the day of the week (0-6) for the specified date according to local time.
Date.prototype.getFullYear()
Returns the year (4 digits for 4-digit years) of the specified date according to local time.
Date.prototype.getHours()
Returns the hour (0-23) in the specified date according to local time.
Date.prototype.getMilliseconds()
Returns the milliseconds (0-999) in the specified date according to local time.
Date.prototype.getMinutes()
Returns the minutes (0-59) in the specified date according to local time.
Date.prototype.getMonth()
Returns the month (0-11) in the specified date according to local time.
Date.prototype.getSeconds()
Returns the seconds (0-59) in the specified date according to local time.
Date.prototype.getTime()
Returns the numeric value of the specified date as the number of milliseconds since January 1, 1970, 00:00:00 UTC (negative for prior times).
Date.prototype.getTimezoneOffset()
Returns the time-zone offset in minutes for the current locale.
Date.prototype.getUTCDate()
Returns the day (date) of the month (1-31) in the specified date according to universal time.
Date.prototype.getUTCDay()
Returns the day of the week (0-6) in the specified date according to universal time.
Date.prototype.getUTCFullYear()
Returns the year (4 digits for 4-digit years) in the specified date according to universal time.
Date.prototype.getUTCHours()
Returns the hours (0-23) in the specified date according to universal time.
Date.prototype.getUTCMilliseconds()
Returns the milliseconds (0-999) in the specified date according to universal time.
Date.prototype.getUTCMinutes()
Returns the minutes (0-59) in the specified date according to universal time.
Date.prototype.getUTCMonth()
Returns the month (0-11) in the specified date according to universal time.
Date.prototype.getUTCSeconds()
Returns the seconds (0-59) in the specified date according to universal time.
Date.prototype.getYear()
Returns the year (usually 2-3 digits) in the specified date according to local time. Use getFullYear() instead.

Setter

Date.prototype.setDate()
Sets the day of the month for a specified date according to local time.
Date.prototype.setFullYear()
Sets the full year (e.g. 4 digits for 4-digit years) for a specified date according to local time.
Date.prototype.setHours()
Sets the hours for a specified date according to local time.
Date.prototype.setMilliseconds()
Sets the milliseconds for a specified date according to local time.
Date.prototype.setMinutes()
Sets the minutes for a specified date according to local time.
Date.prototype.setMonth()
Sets the month for a specified date according to local time.
Date.prototype.setSeconds()
Sets the seconds for a specified date according to local time.
Date.prototype.setTime()
Sets the Date object to the time represented by a number of milliseconds since January 1, 1970, 00:00:00 UTC, allowing for negative numbers for times prior.
Date.prototype.setUTCDate()
Sets the day of the month for a specified date according to universal time.
Date.prototype.setUTCFullYear()
Sets the full year (e.g. 4 digits for 4-digit years) for a specified date according to universal time.
Date.prototype.setUTCHours()
Sets the hour for a specified date according to universal time.
Date.prototype.setUTCMilliseconds()
Sets the milliseconds for a specified date according to universal time.
Date.prototype.setUTCMinutes()
Sets the minutes for a specified date according to universal time.
Date.prototype.setUTCMonth()
Sets the month for a specified date according to universal time.
Date.prototype.setUTCSeconds()
Sets the seconds for a specified date according to universal time.
Date.prototype.setYear()
Sets the year (usually 2-3 digits) for a specified date according to local time. Use setFullYear() instead.

Conversion getter

Date.prototype.toDateString()
Returns the "date" portion of the Date as a human-readable string.
Date.prototype.toISOString()
Converts a date to a string following the ISO 8601 Extended Format.
Date.prototype.toJSON()
Returns a string representing the Date using toISOString(). Intended for use by JSON.stringify().
Date.prototype.toGMTString()
Returns a string representing the Date based on the GMT (UT) time zone. Use toUTCString() instead.
Date.prototype.toLocaleDateString()
Returns a string with a locality sensitive representation of the date portion of this date based on system settings.
Date.prototype.toLocaleFormat()
Converts a date to a string, using a format string.
Date.prototype.toLocaleString()
Returns a string with a locality sensitive representation of this date. Overrides the Object.prototype.toLocaleString() method.
Date.prototype.toLocaleTimeString()
Returns a string with a locality sensitive representation of the time portion of this date based on system settings.
Date.prototype.toSource()
Returns a string representing the source for an equivalent Date object; you can use this value to create a new object. Overrides the Object.prototype.toSource() method.
Date.prototype.toString()
Returns a string representing the specified Date object. Overrides the Object.prototype.toString() method.
Date.prototype.toTimeString()
Returns the "time" portion of the Date as a human-readable string.
Date.prototype.toUTCString()
Converts a date to a string using the UTC timezone.
Date.prototype.valueOf()
Returns the primitive value of a Date object. Overrides the Object.prototype.valueOf() method.

Examples

Several ways to create a Date object

The following examples show several ways to create JavaScript dates:

Note: parsing of date strings with the Date constructor (and Date.parse, they are equivalent) is strongly discouraged due to browser differences and inconsistencies.

var today = new Date();
var birthday = new Date('December 17, 1995 03:24:00');
var birthday = new Date('1995-12-17T03:24:00');
var birthday = new Date(1995, 11, 17);
var birthday = new Date(1995, 11, 17, 3, 24, 0);

Two digit years map to 1900 - 1999

In order to create and get dates between the years 0 and 99 the Date.prototype.setFullYear() and Date.prototype.getFullYear() methods should be used.

var date = new Date(98, 1); // Sun Feb 01 1998 00:00:00 GMT+0000 (GMT)

// Deprecated method, 98 maps to 1998 here as well
date.setYear(98);           // Sun Feb 01 1998 00:00:00 GMT+0000 (GMT)

date.setFullYear(98);       // Sat Feb 01 0098 00:00:00 GMT+0000 (BST)

Calculating elapsed time

The following examples show how to determine the elapsed time between two JavaScript dates in millisconds.

Due to the differing lengths of days (due to daylight saving changeover), months and years, expressing elapsed time in units greater than hours, minutes and seconds requires addressing a number of issues and should be thoroughly researched before being attempted.

// using Date objects
var start = Date.now();

// the event to time goes here:
doSomethingForALongTime();
var end = Date.now();
var elapsed = end - start; // elapsed time in milliseconds
// using built-in methods
var start = new Date();

// the event to time goes here:
doSomethingForALongTime();
var end = new Date();
var elapsed = end.getTime() - start.getTime(); // elapsed time in milliseconds
// to test a function and get back its return
function printElapsedTime(fTest) {
  var nStartTime = Date.now(),
      vReturn = fTest(),
      nEndTime = Date.now();

  console.log('Elapsed time: ' + String(nEndTime - nStartTime) + ' milliseconds');
  return vReturn;
}

yourFunctionReturn = printElapsedTime(yourFunction);

Note: In browsers that support the Web Performance API's high-resolution time feature, Performance.now() can provide more reliable and precise measurements of elapsed time than Date.now().

Specifications

Specification Status Comment
ECMAScript 2017 Draft (ECMA-262)
The definition of 'Date' in that specification.
Draft  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Date' in that specification.
Standard  
ECMAScript 5.1 (ECMA-262)
The definition of 'Date' in that specification.
Standard  
ECMAScript 1st Edition (ECMA-262) Standard Initial definition. Implemented in JavaScript 1.1.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) [1] (Yes) [1] (Yes) [2] (Yes) [1] (Yes) [1]
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

[1] Some browsers can have issues when parsing dates: 3/14/2012 blog from danvk Comparing FF/IE/Chrome on Parsing Date Strings

[2] ISO8601 Date Format is not supported in Internet Explorer 8, and other version can have issues when parsing dates

Documentlabels en -medewerkers

 Aan deze pagina hebben bijgedragen: dkruythoff
 Laatst bijgewerkt door: dkruythoff,