GetUTCMilliseconds: примеры (JAVASCRIPT)

Использование getUTCMilliseconds для работы со временем в JavaScript
Раздел: Дата и время, UTC методы
getUTCMilliseconds: number

Функция getUTCMilliseconds

Метод getUTCMilliseconds() является частью объекта Date в JavaScript. Он применяется для получения миллисекунд из указанной даты по Всемирному координированному времени (UTC).

Функция используется, когда требуется точное время в миллисекундах, не зависящее от локального часового пояса пользователя. Это важно в приложениях, где важна синхронизация между разными регионами, например, в логировании событий, финансовых транзакциях или научных измерениях.

Метод не принимает аргументов.

Возвращаемое значение — целое число в диапазоне от 0 до 999, представляющее миллисекунды указанного объекта Date по UTC.

Простые примеры

Базовый вызов для текущей даты и времени:

const now = new Date();
console.log(now.getUTCMilliseconds());
// Результат зависит от текущего времени, например: 457

Создание конкретной даты и получение миллисекунд:

const specificDate = new Date('2023-12-25T10:30:15.123Z');
console.log(specificDate.getUTCMilliseconds());
123

Похожие функции в JavaScript

getMilliseconds() — возвращает миллисекунды по местному времени. Используется, когда важен локальный часовой пояс.

Date.now() — статический метод, возвращающий количество миллисекунд, прошедших с 1 января 1970 года 00:00:00 по UTC. Позволяет быстро получить метку времени.

performance.now() — предоставляет высокоточную временную метку с микросекундным разрешением, используемую для измерения производительности.

Распространенные ошибки

Вызов метода для неверного типа данных:

const str = "2023-01-01";
console.log(str.getUTCMilliseconds());
// TypeError: str.getUTCMilliseconds is not a function

Использование результата без учета диапазона (0-999) для вычислений с большими интервалами:

const date1 = new Date('2023-01-01T00:00:00.999Z');
const date2 = new Date('2023-01-01T00:00:01.001Z');
const diff = date2.getUTCMilliseconds() - date1.getUTCMilliseconds();
console.log(diff); // Неверный расчет разницы между датами
2 // Ожидалась разница около 2 миллисекунд, но метод не учитывает секунды

Изменения в функции

Метод getUTCMilliseconds() был стандартизирован в ECMAScript 1 (1997 год) и с тех пор не претерпевал существенных изменений в спецификации. Поведение функции остается стабильным во всех версиях JavaScript.

Расширенные примеры использования

Измерение времени выполнения операции:

Пример javascript
const start = new Date();
// Имитация длительной операции
for(let i = 0; i < 1000000; i++) {}
const end = new Date();
const duration = end.getUTCMilliseconds() - start.getUTCMilliseconds();
console.log(`Операция заняла: ${duration} мс`);
// Пример: Операция заняла: 12 мс

Генерация уникального идентификатора с временным компонентом:

Пример javascript
function generateId() {
  const date = new Date();
  return `ID_${date.getUTCFullYear()}${date.getUTCMilliseconds()}${Math.random().toString(36).substr(2, 5)}`;
}
console.log(generateId());
// Пример: ID_2023789a7b3c

Синхронизация анимации с высокой точностью:

Пример javascript
function animateWithPrecision() {
  const startMs = new Date().getUTCMilliseconds();
  // Логика анимации, зависящая от точного времени
  const progress = (new Date().getUTCMilliseconds() - startMs) / 1000;
  return Math.min(progress, 1.0);
}

Аналоги в других языках программирования

PHP: Функция date('u') возвращает микросекунды. Для миллисекунд результат делится на 1000.

echo intval(date('u')) / 1000;
// Пример: 123.456

Python: В модуле datetime атрибут microsecond у объекта datetime возвращает микросекунды. Для миллисекунд используется деление.

from datetime import datetime
now = datetime.utcnow()
print(now.microsecond // 1000)
# Пример: 789

MySQL: Функция MICROSECOND() возвращает микросекунды из времени. Для миллисекунд применяется FLOOR(MICROSECOND(ts) / 1000).

SELECT FLOOR(MICROSECOND(NOW(3)) / 1000);
-- Пример: 500

JS getUTCMilliseconds function comments

En
GetUTCMilliseconds Returns the milliseconds in the specified date according to universal time