text: // Методы setInterval(func, delay) и setTimeout(func, delay)
  // позволяют запускать func регулярно/один раз через delay миллисекунд.
  // Оба метода возвращают идентификатор таймера. Его используют для
  // остановки выполнения вызовом clearInterval/clearTimeout.
  // Минимальная задержка по стандарту составляет 4 мс. Браузеры соблюдают
  // этот стандарт, но некоторые другие среды для выполнения JS, например
  // Node.JS, могут предоставить и меньше задержки.
  // В реальности срабатывания таймера могут быть гораздо реже, чем
  // назначено, например если процессор перегружен, вкладка находится в
  // фоновом режиме, компьютер работает от батареи или по какой-то иной
  // причине.
  
  // (function() {
  //   'use strict';
  //   var secondsCounter = 0,
  //     startTime = new Date();
  //
  //   var timerID = setInterval(function() {
  //     secondsCounter += 1000;
  //     var deltaTime = new Date() - startTime;
  //
  //     console.log('ms: ', secondsCounter);
  //     console.log('ms using date: ', deltaTime);
  //   }, 1);
  //
  //   // setTimeout(function () {
  //   //   clearInterval(timerID);
  //   // }, 5000);
  // })();
  
  
  // Метод Date.now() возвращает дату сразу в виде миллисекунд. В отличие
  // от new Date() он не создаёт промежуточный объект даты, а поэтому – во
  // много раз быстрее. Рекомендуется использовать там, где
  // производительность при работе с датами критична. Обычно это не на
  // веб-страницах, а, к примеру, в разработке игр на JavaScript.
  // Cчетчиках реального времени.
  
  // (function() {
  //   'use strict';
  //   var startTime = Date.now();
  //
  //   var timer = setInterval(function() {
  //     var deltaTime = Date.now() - startTime;
  //
  //     console.log('ms using Date.now(): ', deltaTime);
  //   }, 1);
  // })();
  
  // Итого:
  // - Дата и время представлены в JavaScript одним объектом - Date.
  // - Создать только время при этом нельзя, оно должно быть с датой.
  // - Отсчёт месяцев начинается с нуля.
  // - Отсчёт дней недели (для getDay()) тоже начинается с нуля (и это
  // воскресенье).
  // - Объект Date удобен тем, что автокорректируется.
  // Благодаря этому легко сдвигать даты.
  // - При преобразовании к числу объект Date переводится в количество
  // миллисекунд, прошедших с 1 января 1970 UTC.
  // - Побочное следствие – даты можно вычитать, результатом будет разница
  // в миллисекундах.
  // - Для получения текущей даты в миллисекундах лучше использовать
  // Date.now(), чтобы не создавать лишний объект Date
  