Class: Performance

Performance


new Performance()

Classe do objeto global performance, que permite medir intervalos de tempo com alta resolução por meio de um relógio monotônico, que não é afetado por ajustes no relógio do sistema.

Mais detalhes em MDN Performance.

Essa implementação é parcial em relação à especificação High Resolution Time.

  • A origem do tempo é a criação do ambiente JavaScript da sessão.
  • Ao contrário dos navegadores, a precisão do valor retornado por now() não é reduzida.
  • Os demais membros, como mark(), measure() e getEntries(), e a classe PerformanceObserver não estão disponíveis.

A classe não pode ser instanciada. Deve ser utilizado o objeto global performance.

See:

Members


timeOrigin :number

Data e hora da origem do tempo da sessão, em milissegundos desde 01/01/1970 UTC, com fração.

A soma de timeOrigin com o valor de now() resulta na data e hora corrente com alta resolução.

Type:
  • number
Example
const wallClock = performance.timeOrigin + performance.now();
new Date(wallClock); // => data e hora corrente

Methods


now()

Retorna o tempo decorrido desde a origem do tempo da sessão, em milissegundos com fração.

O valor retornado nunca diminui entre chamadas sucessivas, sendo adequado para medir a duração de operações. Para obter a data e a hora, deve ser utilizado Date.now().

Returns:

Tempo decorrido em milissegundos.

Type
number
Example
const start = performance.now();
doSomething();
const elapsed = performance.now() - start; // milissegundos, como 12.345678

toJSON()

Retorna um objeto simples com os valores a serem serializados, contendo a propriedade timeOrigin. Este método é chamado automaticamente por JSON.stringify, que serializa o objeto retornado.

Returns:

Objeto com a propriedade timeOrigin.

Type
Object
Example
performance.toJSON(); // => { timeOrigin: 1793480000000.123 }
JSON.stringify(performance); // => '{"timeOrigin":1793480000000.123}'