setUTCFullYear / setUTCDate / setUTCHours… în JavaScript

Dată și oră Toate browserele, Node.js

Schimbă componentele unei date în UTC, fără influența fusului orar și a orei de vară.

Sintaxă
data.setUTCFullYear(an, luna, zi)
data.setUTCMonth(luna, zi)
data.setUTCDate(zi)
data.setUTCHours(ore, minute, secunde, ms)
data.setUTCMinutes(...)
data.setUTCSeconds(...)
data.setUTCMilliseconds(ms)

Ce face setUTCFullYear / setUTCDate / setUTCHours...

Variantele setUTC… funcționează ca setFullYear, setDate, setHours etc., dar în UTC. Sunt utile pentru calcule cu zile întregi: în ora locală, o zi poate avea 23 sau 25 de ore la schimbarea orei, în UTC are mereu 24.

Parametri

Parametru Descriere
an, luna, zi, ore, ... Noile valori în UTC; luna de la 0 la 11.

Ce returnează

Noul timestamp (milisecunde).

Exemple

Exemplul 1: Miezul nopții UTC și zile adăugate

const d = new Date("2026-10-19T14:37:00Z");

d.setUTCHours(0, 0, 0, 0);
console.log(d.toISOString());

d.setUTCDate(d.getUTCDate() + 14);
console.log(d.toISOString());

d.setUTCFullYear(2027, 0, 1);
d.setUTCMonth(5);
d.setUTCMinutes(45, 30, 500);
console.log(d.toISOString());
d.setUTCSeconds(5);
d.setUTCMilliseconds(0);
console.log(d.toISOString());

Rezultat

2026-10-19T00:00:00.000Z
2026-11-02T00:00:00.000Z
2027-06-01T00:45:30.500Z
2027-06-01T00:45:05.000Z

Greșeli frecvente

  • Calculezi „ziua de mâine” adunând 24 de ore în ora locală, în noaptea schimbării orei. Lucrează cu setUTCDate sau cu setDate, nu cu ore.

Comenzi înrudite