Page 250 - Браун Э. - Изучаем JavaScript. Руководство по созданию современных веб-сайтов - 2017
P. 250

ГЛ В А  5
                                                                                 1
                                                                           А
                                                         Д  а т а и вр е м я











          В большинстве реальных приложений используются данные о дате и  времени.
       К сожалению, объект JavaScript Date (который хранит данные о дате и времени) не
       является одним из шедевров языка.  Из-за ограниченного удобства этого встроен­
       ного объекта я буду использовать Moment . j s, который наследует функциональные
       возможности объекта Date, для реализации наиболее популярных функциональных
       возможностей.
          Интересный  исторический  факт: объект JavaScript Date был первоначально ре­
       ализован  программистом Netscape  Кеном Смитом  (Ken Smith); он,  по  существу,
       перенес в JavaScript реализацию j ava . util . Date из языка Java. Таким образом, ут­
       верждение, что язык JavaScript не имеет никакого отношения к Java, не полностью
       соответствует действительности: если вас когда-либо спросят, имеют ли эти языки
       что-то общее, можете сказать "Очень немногое, кроме объекта Date  и общего син­
       таксического предка':
          Поскольку регулярно повторять слова "дата и время" утомительно, далее я буду
       использовать термин "дата': Дата без явного указания времени будет подразумевать
       1 2 :00 утра текущего дня.


       Даты, часовые пояса, време н н ы е   метки и э п охи               U n i x

          Давайте  посмотрим  правде  в  глаза:  наш  современный  Григорианский  кален­
       дарь - капризный, сверхсложный, нумеруемый начиная с  1, с нечетной кратностью
       времени и високосными годами. Часовые пояса добавляют еще больше сложности.
       Однако эта система по большей части универсальна и нам с ней жить.
          Давайте начнем с чего-то простого: с секунд. В отличие от сложного деления вре­
       мени в  Г р игорианском календаре, секунды просты. Дата и время (представленные
       в секундах) являются одним числом,  аккуратно упорядоченным на числовой оси.
       Поэтому представление даты и времени в секундах идеально подходит для вычисле­
       ний. Но для коммуникаций между людьми подходит не очень хорошо: "Эй, Байрон,
       пообедаем в  1437595200?"  1 437595200  - это среда, 22 июля 201 5   года, 1  час по по­
                               (
       лудни тихоокеанского времени.) Но если даты представляются секундами, то чему
   245   246   247   248   249   250   251   252   253   254   255