Pergunta

Existe algum caso real em que o getUTClyEar () difere do FetlyEar () em JavaScript?

O mesmo vale para:

getutcmonth () vs getmonth ()

getutcdate () vs getDate ()

Estou perdendo alguma coisa aqui?

EDITAR:

Ver documentação getutclyear ().

Existe algum caso real em que o getUTClyEar () difere do FetlyEar () em JavaScript?

Foi útil?

Solução

Sim, por volta do ano novo. Se o seu TZ for -12, o valor difere entre 31. Dezembro, 12:00 e meia -noite.

Outras dicas

Os métodos getutc ... () retornam a data e a hora no fuso horário da UTC, enquanto as outras funções retornam a data e a hora no fuso horário local do computador em que o script está sendo executado.

Às vezes, é conveniente ter a data e a hora no fuso horário local e, às vezes, é conveniente ter a data e a hora em um fuso horário independente do fuso horário local do computador.

Existem maneiras de converter entre os fusos horários em JavaScript, mas eles são pesados.

Então, acho que é apenas por conveniência.

As funções que você liste relatam essencialmente o tempo em diferentes fusos horários, para ter um caso em que getUTCFullYear() vai diferir de getFullYear() Será na noite de 31 de dezembro se você morar a oeste do Meridian Greenwich.

Por exemplo, no seu fuso horário local, o horário pode ser 21:00, mas na UTC já pode ser 2 da manhã em 1º de janeiro, então:

var d = new Date();
d.getFullYear() == 2009  //True
d.getUTCFullYear() == 2010  //True

É confuso, pois os métodos operam em um Date objeto em vez de relatar o tempo atual do UTC. Mas o método diz, se é o momento aqui, em que ano é no fuso horário da UTC. Portanto, para 364,75 dias dos anos relatados pelos dois métodos, serão os mesmos.

Como 31 de dezembro vai para 1 de janeiro, isso acontece em momentos diferentes em diferentes partes do mundo. Portanto, o tempo da UTC será diferente da hora local da Nova Zelândia - portanto, em algum momento, obtiverá () diferirá do getUTClyEar () por 1.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top