TempusJS - рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рддрд╛рд░реАрдЦ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░!
рдореБрдЭреЗ рдЕрдХреНрд╕рд░ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рддрд╛рд░реАрдЦреЛрдВ рд╕реЗ рдмрдВрдзрд╛ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рд╣реА рддрд╛рд░реАрдЦ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рд╛рд░реВрдкреЛрдВ рдореЗрдВ рдкреГрд╖реНрда рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ)ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЗрд╕ рд╕рднреА рднрдпрд╛рд╡рд╣ рдХреЛрдб рд╕реЗ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╡рд╛рдХрд┐рдл рд╣реИрдВ рдЬреЛ рджрд┐рдирд╛рдВрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЖрддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, DD.MM.YYYY рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╡рд░реНрддрдорд╛рди рддрд┐рдерд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
var d = new Date(), fd = d.getDate() + '.' + (d.getMonth()+1) + '.' + d.getFullYear(); 

рдФрд░ рдЖрдкрдХреЛ рдЗрд╕ рддрд░рд╣ рдХреА рдмрд╣реБрдд рд╕рд╛рд░реА рд▓рд╛рдЗрдиреЗрдВ рдХрдм рдорд┐рд▓рддреА рд╣реИрдВ? рдХреНрдпрд╛ рдпрд╣ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдПрдХ рдорд╣реАрдирд╛ рдЦрд░реЛрдВрдЪ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЖрдк рди рдХреЗрд╡рд▓ рдЙрд╕ рдкрд░ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ? рдпрд╛ рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдмреИрдХреЗрдВрдб рдкрд░ рд▓рдЧрднрдЧ рд╣рд░ рдЬрдЧрд╣ рдХреА рддрд░рд╣, рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдФрд░ рд╕реЗрдХрдВрдб рдирд╣реАрдВ рд╣реИрдВ? рдЖрдк рд▓реЛрдХрдкреНрд░рд┐рдп Moment.js рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдмрд╣реБрдд рдзреАрд░реЗ-рдзреАрд░реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдкреНрд░рд╢реНрди рдореЗрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред
рдпрджрд┐ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИ, рддреЛ рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╕рдореАрдХреНрд╖рд╛ рдХреЛ рдкрдврд╝реЗрдВред



TempusJS рдХрд╛рдлреА рд╣рдж рддрдХ рдПрдХ рдбреЗрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░ рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдЪреАрдиреА рд╕реЗ рдмрдирд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдпрд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
 var fd = tempus().format('%d.%m.%Y'); 

рдЕрдм рдЧрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред рд╕реНрдкреЙрдЗрд▓рд░ рдореЗрдВ, рдЖрдк рдЯреЗрдВрдкрд╕ рдХреА рддреБрд▓рдирд╛ рдореЛрдореЗрдВрдЯ рдХреЗ рд╕рд╛рде рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рджрд┐рдирд╛рдВрдХ рдХреЛ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдореВрд▓ рддрд░реАрдХрд╛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ (рдКрдкрд░ рджреЗрдЦреЗрдВ):
рджреЗрд╢реА JS, MomentJS рдФрд░ TempusJS рдХреА рддреБрд▓рдирд╛
рд╣рдореЗрдВ рд╡рд░реНрддрдорд╛рди рддрд┐рдерд┐ рдорд┐рд▓рддреА рд╣реИ

 рдореВрд▓ рдирд┐рд╡рд╛рд╕реА рдЬреЗрдПрд╕ x 2,175,575 рдСрдкреНрд╕ / рд╕реЗрдХ 1 0.75% (96 рд░рди рд╕реИрдВрдкрд▓) 
 рдореЛрдореЗрдВрдЯ x 284.864 рдСрдкреНрд╕ / рд╕реЗрдХ .8 0.85% (96 рд░рди рд╕реИрдВрдкрд▓) 
 Tempus x 2,086,081 рдСрдкреНрд╕ / рд╕реЗрдХрдВрдб (0.73% (97 рд░рди рдирдореВрдирд╛)


рд╕реНрд╡рд░реВрдкрдг

 рдиреЗрдЯрд┐рд╡ JS x 1,637,517 op / sec% 0.61% (100 рд░рди рд╕реИрдВрдкрд▓) 
 рдкрд▓ x 8,808 рдСрдкреНрд╕ / рд╕реЗрдХрдВрдб% 1.07% (100 рд░рди рдирдореВрдирд╛) 
 Tempus x 942.815 рдСрдкреНрд╕ / рд╕реЗрдХ% 0.68% (94 рд░рди рд╕реИрдВрдкрд▓) 


рдСрдЯреЛ рддрд┐рдерд┐ рдФрд░ рдкрд╛рд░реНрд╕рд┐рдВрдЧ

 рдиреЗрдЯрд┐рд╡ рдЬреЗрдПрд╕ x 11,204,316 рдСрдкреНрд╕ / рд╕реЗрдХ, 0.81% (88 рд░рди рд╕реИрдВрдкрд▓) 
 рдореЛрдореЗрдВрдЯ x 38.511 рдСрдкреНрд╕ / рд╕реЗрдХрдВрдб 11 1.41% (95 рд░рди рд╕реИрдВрдкрд▓) 
 Tempus x 93.973 рдСрдкреНрд╕ / рд╕реЗрдХрдВрдб% 1.06% (85 рд░рди рдирдореВрдирд╛) 

рдкреНрд░рд╛рд░реВрдк рджреНрд╡рд╛рд░рд╛ рддрд╛рд░реАрдЦреЗрдВ рдкрд╛рд░реНрд╕ рдХрд░рдирд╛

 рдкрд▓ x 46.293 рдСрдкреНрд╕ / рд╕реЗрдХрдВрдб 93 0.63% (100 рд░рди рдирдореВрдирд╛) 
 рдЯреЗрдВрдкрд╕ x 109.947 рдСрдкреНрд╕ / рд╕реЗрдХрдВрдб (0.93% (99 рд░рди рдирдореВрдирд╛рдХреГрдд) 

рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдФрд░ рдорд╛рдиреНрдпрддрд╛

 рдкрд▓ x 44.588 рдСрдкреНрд╕ / рд╕реЗрдХрдВрдб% 1.09% (90 рд░рди рдирдореВрдирд╛) 
 Tempus x 103.439 рдСрдкреНрд╕ / рд╕реЗрдХрдВрдб .4 0.90% (94 рд░рди рдирдореВрдирд╛)

рдкрд░рд┐рдгрд╛рдо Google Chrome рдореЗрдВ рдореЗрд░реЗ рд▓реИрдкрдЯреЙрдк рдкрд░ 30.0.1599.114 рдХреЛ рдкреНрд░рд╛рдкреНрдд рд╣реБрдПред рдЕрдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ, рдкрд░рд┐рдгрд╛рдо рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдиреБрдкрд╛рдд рд▓рдЧрднрдЧ рд╕рдорд╛рди рд░рд╣рддрд╛ рд╣реИред
рдмреЗрдВрдЪрдорд╛рд░реНрдХ.рдЬреИрд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдмреЗрдВрдЪрдорд╛рд░реНрдХ, рдЖрдк рдпрд╣рд╛рдБ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред


рддреЛ, рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдлрд╛рдпрджреЛрдВ рдореЗрдВ, рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ:


рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ред рд╕рд╛рдЗрдЯ рдкрд░ рдкрд░реАрдХреНрд╖рдг рднреА рд╣реИрдВ (рдпрджрд┐ рдЖрдкрдХреЛ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдпрд╣рд╛рдВ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реЗрдВ ред

рдпрд╣рд╛рдВ рд╣рдо рдХреЗрд╡рд▓ рдХреБрдЫ рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░реЗрдВрдЧреЗред

рд╕реНрд╡рд░реВрдкрдг рдФрд░ рдкрд╛рд░реНрд╕рд┐рдВрдЧ



рддреЛ, рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рджрд┐рдирд╛рдВрдХ рд╕реНрд╡рд░реВрдкрдг рдХрд╛ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдгред рдпрд╣рд╛рдВ рд╣рдо рдХреЙрд▓ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдореВрд▓реНрдп рд╕реЗрдЯрд┐рдВрдЧ рдХреЗ рдЕрдВрдд рдореЗрдВ, рд╣рдореЗрдВ TempusDate рдСрдмреНрдЬреЗрдХреНрдЯ рд╡рд╛рдкрд╕ рдорд┐рд▓рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рд╣рдо рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЖрдЧреЗ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рдЙрджрд╛рд╣рд░рдг:
 tempus(). //    calc({month: -1}). //      format('%d.%m.%Y'); //     

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдореЗрдВ рдПрдХ рд╣реА рджрд┐рди, рдШрдВрдЯрд╛ рдФрд░ рджреВрд╕рд░рд╛ рдорд┐рд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗред рдпрд╣ рдкрд┐рдЫрд▓реЗ рдорд╣реАрдиреЗ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред

рдЕрдЧрд▓рд╛ рдЙрджрд╛рд╣рд░рдг рдбреЗрдЯ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд╣реИред
 //   TempusDate  "2013-11-18" tempus('18.11.2013'); //   TempusDate  "2013-12-12" tempus('2013-12-12', '%Y-%m-%d')); 

Tempus рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХреБрдЫ рдЬреНрдЮрд╛рдд рд╕реНрд╡рд░реВрдкреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рд╛рд░реВрдк рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдлрд┐рд░ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рддреЗрдЬреА рд╕реЗ рд╣реЛрдЧреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдПрдХ рддрд╛рд░реАрдЦ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рдкрд░ рд╡рд╛рдкрд╕ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:
 // .. "123"     '%d.%m.%Y',  //   ,   2013-01-01 tempus('123', '%d.%m.%Y', tempus([2013, 1, 1])); 

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реНрд╡рд░реВрдкреЛрдВ рдХреА рд╕реВрдЪреА рдпрд╣рд╛рдВ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИред

рдЕрдм рдкрд╣рд▓реЗ рд╕реЗ рдлреЙрд░реНрдореЗрдЯ рдХреА рдЧрдИ рддрд╛рд░реАрдЦ рдХрд╛ рдкреНрд░рд╛рд░реВрдк рдмрджрд▓ рджреЗрдВ
 // '2013-11-05' tempus('05.11.2013').format('%Y-%m-%d'); //   // 'October, 12' tempus('2013-10-12 12:31:01', '%Y-%m-%d %H:%M:%S').format('%B, %d'); 


рд╕реНрд╡рд░реВрдкрдг рдХреЗ рд▓рд┐рдП рдЖрдк рд╕реНрдерд╛рдиреАрдпрдХрд░рдг рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рднрд╛рд╖рд╛ рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ (рд╣рдо рдЗрд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ рд▓реЗрддреЗ рд╣реИрдВ) рдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рднрд╛рд╖рд╛ рдЕрдЧрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рднрд╛рд╖рд╛ рдЙрдкрд▓рдмреНрдз рдЯреЗрдВрдкрд╕ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдирд╣реАрдВ рдорд┐рд▓реА рд╣реИред
 //   tempus.lang('ru'); //   format // ', 05' tempus(1383609600).format('%B, %d'); 

рдлрд┐рд▓рд╣рд╛рд▓ рдХреЗрд╡рд▓ рджреЛ рднрд╛рд╖рд╛рдПрдВ рд╣реИрдВ - рд░реВрд╕реА рдФрд░ рдЕрдВрдЧреНрд░реЗрдЬреА, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

рдорд╛рдиреНрдпрддрд╛


рджрд┐рдирд╛рдВрдХ рдХрд╛ рд╕рддреНрдпрд╛рдкрди рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ:
 //  false tempus('32.08.2013', '%d.%m.%Y').valid(); //  true tempus('00:00 01.01.2012', '%H:%M %d.%m.%Y').valid(); 


рддреНрд░реБрдЯрд┐ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдк рдЙрди рдлрд╝реАрд▓реНрдбреНрд╕ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдпрд╣ рд╣реБрдЖ рдерд╛ - рдЬрд╣рд╛рдБ рднреА рдорд╛рди рдЧрд▓рдд рдирд╣реАрдВ рд╣реИ:
 //  {"year":-5,"month":false,"day":false,"hours":false, // "minutes":false,"seconds":false,"milliseconds":false} tempus(). year(-5). //  =-5, ..  errors(); //     


рддрд┐рдерд┐ рд╕реАрдорд╛


рдХрднреА-рдХрднреА рд╣рдореЗрдВ рд╡рд░реНрд╖реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдпреБ), рдорд╣реАрдиреЗ, рджрд┐рди рдЖрджрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рджреЛ рддрд┐рдерд┐рдпреЛрдВ рдХреЗ рдмреАрдЪред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдмреАрдЪ рдХреА рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рд╡рд╛рдВрдЫрд┐рдд рдкреНрд░рд╛рд░реВрдк ('рд╡рд░реНрд╖', 'рдорд╣реАрдирд╛', 'рджрд┐рди', 'рдШрдВрдЯреЗ', 'рдорд┐рдирдЯ', 'рд╕реЗрдХрдВрдб', 'рдорд┐рд▓реАрд╕реЗрдХрдВрдб') рдореЗрдВ рджреЛ рддрд┐рдерд┐рдпреЛрдВ рдФрд░ рд░рд┐рдЯрд░реНрди рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдкрд╛рддрд╛ рд╣реИред
рдпрд╣рд╛рдБ 1 рдирд╡рдВрдмрд░, 2013 рдФрд░ 5 рдордИ, 2014 рдХреЗ рдмреАрдЪ рдорд╣реАрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд╣реИ:
 //  6 tempus([2013, 11, 1]).between(tempus([2014, 5, 5]), 'month'); 

рдпрд╛ рдирдП рд╕рд╛рд▓ рддрдХ рдХрд┐рддрдиреЗ рдШрдВрдЯреЗ рдмрдЪреЗ рд╣реИрдВ
 tempus().between(tempus([2014]), 'hours'); 

рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рд╡рд░реНрд╖ рдХрд╛ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ред рдХрд┐рд╕реА рд╕рд░рдгреА рдпрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдорд╛рди рд╕реЗрдЯ рдХрд░рддреЗ рд╕рдордп, рдЕрдиреБрдкрд▓рдмреНрдз рдорд╛рди рд╣реЛрдВрдЧреЗ
рдХрдо рд╕реЗ рдХрдо рднрд░рд╛ рд╣реБрдЖред рдиреНрдпреВрдирддрдо рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреА рдПрдХ рд╕реВрдЪреА, рдЖрдк рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдХреИрд▓реНрдХ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рддрд╛рд░реАрдЦ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ:
 //  TempusDate   2012-01-01 tempus([2011, 5, 2]).calc({year: 1, month: -4, day: -1}); 


рдЦреБрдж рдХреЗ рдкреНрд░рд╛рд░реВрдк


рд╣рдо рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ 1 рд╕реЗ 12 рддрдХ рдорд╛рди рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ (рдФрд░ 01 рд╕реЗ 12 рддрдХ рдирд╣реАрдВ):
 //    tempus.registerFormat('%q', //  - %q function(date) { //    , ..     %q return date.month(); }, function(value) { //     var v = Number(value); return {month: (isNaN(v) ? undefined : v) }; }, 1, //  ,     2, //   'number' //  ); //  //  "01.1.2013"; tempus({year: 2013, month: 1, day: 1}).format('%d.%q.%Y'); //  {"year":2013,"month":2,"day":10,"hours":0,"minutes":0,"seconds":0}; tempus('10.2.2013', '%d.%q.%Y').get(); 

рдкрдВрдЬреАрдХрд░рдг рдХрд░рддреЗ рд╕рдордп, рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдХреБрдЫ рдкреИрд░рд╛рдореАрдЯрд░ рдЕрд▓рдЧ рд╕реЗ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдЬрдмрдХрд┐ рдПрдХ рдирд┐рдпрдорд┐рдд рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдореВрд▓ рд░реВрдк рд╕реЗ рд╡рд╣рд╛рдВ рдерд╛, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдЧрддрд┐ рдХрдИ рджрд░реНрдЬрди рдЧреБрдирд╛ рдмрдврд╝ рдЧрдИред
рдпрджрд┐ рдЖрдкрдХреЛ рдХреБрдЫ рдкреНрд░рд╛рд░реВрдк рд╣рдЯрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ unregisterFormat рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:
 tempus.unregisterFormat('%d'); //  "%d.01.2013", ..  %d   . tempus.format({year: 2013, month: 1, day: 1}, '%d.%m.%Y'); 


рдЧреЗрдЯрд░реНрд╕ / рд╕реЗрдЯрд░реНрд╕


рдЖрдк рд╡рд░реНрд╖ (), рдорд╣реАрдиреЗ (), рджрд┐рди (), рдШрдВрдЯреЗ (), рд╕реЗрдХрдВрдб (), рдорд┐рд▓реАрд╕реЗрдХрдВрдб (), dayOfWeek (), utc (), рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк () рдпрд╛ рд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреБрдЫ рдорд╛рди рдкреНрд░рд╛рдкреНрдд / рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред ()ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
 tempus(). //    year(1900). //    ,   1900  leapYear(); // ,    ,    false tempus().year(); //         


рддрд╛рд░реАрдЦ рдкреАрдврд╝реА


рдЖрдк рдХрдИ рддрд░реАрдХреЛрдВ рд╕реЗ рддрд╛рд░реАрдЦ рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдорд╛рдкрджрдВрдбреЛрдВ рдХреА рдкреВрд░реА рд╕реВрдЪреА рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рд╣реИред рдпрд╣рд╛рдБ рдПрдХ рдиреНрдпреВрдирддрдо рдЙрджрд╛рд╣рд░рдг рд╣реИред
 // returns ["29.03.2013", "30.03.2013", "31.03.2013", "01.04.2013", "02.04.2013"]; tempus.generate({ dateFrom: '20130329', formatFrom: '%Y.%m.%d', dateTo: '20130402', period: {day: 1}, format: '%d.%m.%Y' }); 

рдпрд╣ рдмреИрдХрдПрдВрдб рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рдмрд┐рдирд╛, рддрд┐рдерд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЪрд╛рд░реНрдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рд╕реАрдзреЗ рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рд╛рд░реВрдк рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рджрд┐рдирд╛рдВрдХ рдХреЛ рдПрдХ рд╕рд░рдгреА рдХреЗ рд░реВрдк рдореЗрдВ рдпрд╛ рдЙрди рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рддрд┐рдерд┐рдпрд╛рдВ рд╕реНрд╡рдпрдВ рдХреБрдВрдЬрд┐рдпрд╛рдВ рд╣реЛрдВрдЧреА (рдпрд╣ рддрдм рдЙрдкрдпреЛрдЧреА рд╣реЛрддреА рд╣реИ рдЬрдм рд╣рдореЗрдВ рдХрд┐рд╕реА рдШрдЯрдирд╛ рдХреЛ рдХрд┐рд╕реА рддрд┐рдерд┐ рд╕реЗ рдмрд╛рдВрдзрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рд╣рдо рдЕрдкрдирд╛ рдХреИрд▓реЗрдВрдбрд░ рдмрдирд╛рддреЗ рд╣реИрдВ)ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рддрд╛рд░реАрдЦреЛрдВ рдХреЛ рджрд┐рди, рд╕рдкреНрддрд╛рд╣, рдорд╣реАрдиреЗ, рдШрдВрдЯреЗ, рд╡рд░реНрд╖ - рдЬреЛ рднреА рд╣реЛ, рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдЧреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕реЗ рдХреИрд▓реЗрдВрдбрд░ рдореЗрдВ рднреА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдкреНрд▓рдЧ-рдЗрди


рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдФрд░ рдЖрдЦрд┐рд░реА - рдкреНрд▓рдЧрдЗрдиреНрд╕ред рдпрд╣рд╛рдВ рд╣рдо рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рддрд╛рд░реАрдЦ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░рдЦрд╛рдиреЗ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдореЗрдВ рдЯреЗрдВрдкрд╕рдбреЗрдЯ рдХреНрд▓рд╛рд╕ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдпрд╣ tempus.classes () рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣рд╛рдБ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкреНрд▓рдЧрдЗрди рд╣реИ:
 (function (tempus) { var TempusDate = tempus.classes('TempusDate'); tempus.randomDate = function() { var date = new TempusDate(); date.year(Math.floor((Math.random()*(tempus.MAX_YEAR - tempus.MIN_YEAR)) + tempus.MIN_YEAR)). month(Math.floor((Math.random()*(tempus.MAX_MONTH - tempus.MIN_MONTH)) + tempus.MIN_MONTH)). day(Math.floor((Math.random()*(date.dayCount() - tempus.MIN_DAY)) + tempus.MIN_DAY)). hours(Math.floor((Math.random()*(tempus.MAX_HOURS - tempus.MIN_HOURS)) + tempus.MIN_HOURS)). minutes(Math.floor((Math.random()*(tempus.MAX_MINUTES - tempus.MIN_MINUTES)) + tempus.MIN_MINUTES)). seconds(Math.floor((Math.random()*(tempus.MAX_SECONDS - tempus.MIN_SECONDS)) + tempus.MIN_SECONDS)); return date; }; })(tempus); //        var someRandomDate = tempus.randomDate(); 

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рд╕реЗ jQuery + Tempus, Angular + Tempus, рдЖрджрд┐ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрд╕рд╛рдиреА рд╕реЗ рд╡рд┐рдЬреЗрдЯ рд▓рд┐рдЦрдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред

рд╕реНрд░реЛрдд рдХреЛрдб


рдЖрдк рдЗрд╕реЗ рдЬреАрдереВрдм рд╕реЗ рд╕реНрд░реЛрдд рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдХреЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
https://github.com/crusat/tempus-js/releases
рдпрд╛ рдмреЛрд╡рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ:
 $ bower install tempus 

рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - tempus.js рдпрд╛ tempus.min.jsред

рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛, рдФрд░ рдпрд╣ рдЬрд╛рдирдирд╛ рднреА рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рд╕рд╣реА рджрд┐рд╢рд╛ рдореЗрдВ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдореЗрдВ рдХреНрдпрд╛ рдХрдореА рд╣реИред рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!
рдкреБрдирд╢реНрдЪ рдирд┐рдордВрддреНрд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

Source: https://habr.com/ru/post/In204162/


All Articles