Jquery получава текущо време. JavaScript Вземете текущия час и дата

Вземете текуща датаВ JavaScript е много просто. За това служи обектът Date. Синтаксисът му е доста прост, а имената на методите са интуитивни. В примерите по-долу ще ви покажа как да работите с обект Date (нова дата на JavaScript), за да получите текущата година, месец, ден и час до милисекунда!

Получаване на текущата дата:

За да получите текущата дата в JavaScript, използвайте ключовата дума new, за да създадете нов екземпляр на обекта Date.

var date = нова дата(); console.log(дата);

Този код отпечатва следната информация на конзолата:

//Вторник, 02 февруари 2016 г. 15:46:56 GMT-0500 (Източно стандартно време)

Той показва текущия ден от седмицата, текущия месец, деня от месеца, годината и дори текущото време в 24-часов формат. Фрагментът "GMT" означава средно време по Гринуич, а "-0500" е разликата в часовата зона между местното време и GMT.

Цитат от Wikipedia: „Средното време по Гринуич (GMT) е средното слънчево време в Кралската обсерватория в Гринуич, Лондон.“ Това е свързано с координираното универсално време (UTC). „Източно стандартно време“ в показаната стойност на датата се отнася за часовата зона на вашия браузър или компютър.

*Моля, имайте предвид, че GMT ​​и UTC са различни. Ще разгледаме UTC стойностите за минути.

* Също така имайте предвид, че датата в JavaScript се определя от времето в милисекунди, изминало от полунощ на 01 януари 1970 г., UTC. В един ден има 86 400 000 милисекунди. Диапазонът на обект Date е от -100 000 000 дни до 100 000 000 дни спрямо 01 януари 1970 г., UTC.

*Стойностите, получени чрез метода, споменат по-горе, зависят от системните настройки на вашето устройство. Ако промените настройките на часовника на вашия компютър, времето, което този метод връща, също ще се промени.

Добре, разбрахме новите JavaScript формати за дата и вече сме готови да продължим!

Получаване на деня от седмицата:

За да получите деня от седмицата, използвайте метода getDay() на JavaScript обект Date:

var day = date.getDay(); console.log(ден);

*Моля, обърнете внимание, че дните от седмицата са номерирани от 0 до 6, неделя = 0, понеделник = 1, вторник = 2 и т.н.

Получаване на месеца:

За да получите текущия месец на текущата година, използвайте метода getMonth(). Преди това казах, че имената на методите са интуитивни!

var month = date.getMonth(); console.log(месец); //1

*Имайте предвид, че подобно на дните от седмицата, месеците се връщат в числов формат от 0 до 11; Януари = 0, февруари = 1, март = 2 и така нататък.

Получаване на деня от месеца:

За да получите деня от месеца, можете да използвате метода GetDate().

var dayOfMonth = date.getDate(); console.log(dayOfMonth); //2

* Методът GetDate() връща дните от месеца, номерирани от 1 до 31; номер 1 съответства на първия ден от месеца.

Време за получаване:

За да получите текущото време, се използва методът GetTime().

var time = date.getTime(); console.log(време); //1454461242058

Изглежда... странно... Какво е? Виждате броя милисекунди, изминали от 1 януари 1970 г. 00:00:00 UTC. И така, на колко години е това?

1454461242058 ms / 31540000000 ms на година = около 46 години
1970 + 46 години = 2016

Нека проверим, за да сме сигурни:

var year = date.getFullYear(); console.log(година) //2016

Да това е! Току-що използвахме JavaScript, за да отпечатаме текущата дата и час с нова дата.

Датата и часът са част от нашето ежедневие и затова заемат видно място в програмирането. В JavaScript, когато създавате уебсайт, може да се наложи да добавите календар, разписание на влаковете или интерфейс за насрочване на срещи. Тези приложения трябва да показват подходящи часове въз основа на текущата часова зона на потребителя или да извършват изчисления, свързани с пристигането и заминаването на самолет или началните и крайните часове на събитие. Освен това може да се наложи да използвате JavaScript, за да изпращате ежедневни отчети в определени часове или за филтриране (например, за да намерите ресторанти, отворени в определен час).

Дата обект

Датата е вграден обект в JavaScript, който съхранява дата и час. Той предоставя редица вградени методи за форматиране и управление на тези данни.

По подразбиране нов екземпляр на Date без аргументи създава обект с текущата дата и час според системни настройкитекущ компютър.

Например, опитайте да присвоите текущата дата на променлива. Създайте файл now.js.

// Задаване на променлива на текуща дата и час
const сега = нова дата ();
// Преглед на изхода
сега;
Сряда, 18 октомври 2017 г. 12:41:34 GMT+0000 (UTC)

Резултатът е низ от дата, който съдържа следните данни:

Датата и часът са разбити и показани по лесен за четене начин.

Въпреки това, JavaScript интерпретира датата въз основа на клеймо за време на Unix, което е стойност, състояща се от броя милисекунди, изминали от полунощ на 1 януари 1970 г. Можете да получите времевия печат с помощта на метода getTime().

// Получаване на текущото времево клеймо
сега.getTime();
1508330494000

Голямото число, което се появява в изхода като текущо времево клеймо, представлява броят милисекунди, изминали от полунощ на 1 януари 1970 г. до 18 октомври 2017 г.

Нулево време (или време на епоха) е представено от низ от дата 01 януари 1970 г. 00:00:00 универсално време (UTC) и клеймо 0. Можете да тествате това в браузъра, като създадете нова променлива във файла epoch.js и му присвояване на нов екземпляр на дата, базиран на клеймо за време 0.

// Присвояване на клеймо за време 0 на нова променлива
const epochTime = нова дата (0);
епохаВреме;
01 януари 1970 г. 00:00:00 универсално време (UTC)

Нулево време беше избрано като стандарт за това как компютрите измерват времето и този метод се използва в JavaScript. Важно е да се разбират клеймото за време и низовете за дата, тъй като тези концепции могат да се използват в зависимост от настройките и целта на приложението.

Вече знаете как да създадете нов екземпляр на Date въз основа на текущото време и въз основа на времево клеймо. В JavaScript има общо четири формата за дата. В допълнение към текущия час и клеймо по подразбиране можете също да използвате низ от дата или да посочите конкретна дата и час.

Демонстрирам различни начинипрепратки към конкретна дата, опитайте да създадете нови обекти Date, които представляват 4 юли 1776 г., 12:30 GMT по три различни начина.

// Метод на времево клеймо
нова дата (-6106015800000);
// Метод на низ за дата
нова дата ("31 януари 1980 г. 12:30");
// Метод за дата и час
нова дата (1776, 6, 4, 12, 30, 0, 0);

Всички тези примери представят една и съща информация за дата и час по три различни начина.

Както можете да видите, методът на времевото клеймо има отрицателно число; всяка дата преди час нула ще бъде представена като отрицателно число.

В третия пример секундите и милисекундите са представени с 0. Ако ви липсват данни, когато създавате обект Date, трябва да го присвоите на 0. Липсващите данни не могат да бъдат пропуснати, тъй като редът на данните за времето в низа не промяна. Трябва също да се отбележи, че месец юли е обозначен тук като 6, а не като 7. Това е така, защото обратното броене започва не от 1, а от 0. Повече за това в следващия раздел.

Извличане на дати с get

При дадена дата можете да получите достъп до всички негови компоненти, като използвате различни вградени методи. Методите връщат всяка част от датата спрямо местната часова зона. Всеки от тези методи започва с get и връща относително число. По-долу е дадена подробна таблица на методите за получаване за обект Date.

Време за среща Метод Обхват Пример
година getFullYear() ГГГГ 1970
месец getMonth() 0-11 0 = януари
Ден от месеца getDate() 1-31 1 = 1-во число на месеца
Ден от седмицата getDay() 0-6 0 = неделя
час getHours() 0-23 0 = полунощ
минута getMinutes() 0-59
Второ getSeconds() 0-59
Милисекунда getMilliseconds() 0-999
Времево клеймо getTime()

// Инициализиране на нов рожден ден
const рожден ден = нова дата (1980, 6, 31);

Сега можете да използвате всички методи за извличане на всеки компонент за дата.

рожден ден.getFullYear(); // 1980 г
рожден ден.getMonth(); // 6
рожден ден.getDate(); // 31
рожден ден.getDay(); // 4
рожден ден.getHours(); // 0
рожден ден.getMinutes(); // 0
рожден ден.getSeconds(); // 0
birthday.getMilliseconds(); // 0
birthday.getTime(); // 333849600000 (за GMT)

Понякога трябва да извлечете само част от дата и вградените методи за получаване ще ви помогнат с това.

Например, можете да сравните текущата дата с датата 3 октомври, за да разберете дали е 3 октомври или не.

// Вземете днешната дата
const днес = нова дата ();
// Сравнете днес с 3 октомври
if (today.getDate() === 3 && today.getMonth() === 9) (
console.log("3 октомври е.");
) иначе (
console.log("Не е 3 октомври.");
}
Не е 3 октомври.

Вградените методи за получаване ви позволяват достъп до компонентите на датата.

Промяна на датата с настройка

За всички методи за получаване, изброени по-горе, има съответен set метод. Ако get се използва за извличане на конкретен компонент за дата, set се използва за модифициране на тези компоненти. По-долу е дадена подробна таблица на набор от методи за обект Date.

Време за среща Метод Обхват Пример
година setFullYear() ГГГГ 1970
месец setMonth() 0-11 0 = януари
Ден от месеца setDate() 1-31 1 = 1-во число на месеца
Ден от седмицата setDay() 0-6 0 = неделя
час setHours() 0-23 0 = полунощ
минута setMinutes() 0-59
Второ setSeconds() 0-59
Милисекунда setMilliseconds() 0-999
Времево клеймо setTime() Брой милисекунди от времето нула

Тези методи за задаване могат да се използват за промяна на един или повече компоненти на дата. Например, можете да промените годината в променливата за рожден ден на 1997.

// Промяна на годината на рождената дата
рожден ден.setFullYear(1997);
рожден ден;
четвъртък, 31 юли 1997 г. 00:00:00 GMT+0000 (UTC)

Сега, когато извикате променливата за рождения ден, виждате не 1980, а 1997.

Вградените методи за набор ви позволяват да променяте различни части на обекта Date.

UTC методи

Методите за получаване, описани по-горе, извличат компоненти за дата въз основа на Локални настройкичасовата зона на потребителя. За да увеличите контрола върху датите и часовете, можете да използвате методите getUTC, които работят по същия начин като методите get, но изчисляват часовете въз основа на UTC (координирано универсално време). По-долу е дадена таблица с UTC методи за обект Date в JavaScript.

Време за среща Метод Обхват Пример
година getUTCFullYear() ГГГГ 1970
месец getUTCMonth() 0-11 0 = януари
Ден от месеца getUTCDate() 1-31 1 = 1-во число на месеца
Ден от седмицата getUTCDay() 0-6 0 = неделя
час getUTCHours() 0-23 0 = полунощ
минута getUTCMinutes() 0-59
Второ getUTCSeconds() 0-59
Милисекунда getUTCMilliseconds() 0-999

За да тествате разликата между методите за локално получаване и методите за получаване на UTC, изпълнете следния код.

// Присвояване на текущо време на променлива
const сега = нова дата ();
// Отпечатване на местни и UTC часови зони
console.log(now.getHours());
console.log(now.getUTCHours());

Този код ще изведе текущото време и часовата зона UTC. Ако в момента сте в часовата зона UTC, числата, които програмата ще изведе, ще бъдат същите.

UTC предоставя международен стандарт за време и следователно може да поддържа код за съвпадение на часовите зони, ако е необходимо във вашата програма.

Заключение

В този урок научихте как да създадете екземпляр на обект Date и как да използвате неговите вградени методи за достъп и модифициране на компоненти на конкретна дата. Можете да намерите повече информация за часа и датата в JavaScript в мрежата за разработчици на Mozilla.

Да знаете как да работите с дати е важно за много общи задачи на JavaScript, от създаване на редовни отчети до показване на дати и графици в правилната часова зона.

Тагове:

Друго полезно нещо за уебсайтовете е вмъкването на текущата дата. Десетки примери за скриптове за дати могат да бъдат намерени в Интернет, но много от тях според мен са тромави и следователно грозни. Междувременно, използвайки стандартни средства JavaScript, можете да вмъкнете дата в страница на уебсайт много лесно. Използвам го много често! На снимката (екранна снимка от текущия сайт) на имението Сказка!

Ето целия скрипт за дата:

Според мен не може да бъде по-просто, доста красиво и разбираемо. Ако нямате желание да изучавате конструкцията на този скрипт, просто го поставете където и да е на HTML страницата и получете следния надпис:

Друг по-усъвършенстван вариант

//
// ]]>
// ]]>
// ]]>
// ]]>
// ]]>
! Днес
// + " " + d.getFullYear() + " g.");
// ]]>
// ]]>
// ]]>
// ]]>
// ]]>
// ]]>

Изглежда така:

Днес

Като цяло не се изискват умения, просто глупаво вмъкнете кода и всичко е наред!

Повече информация:

И така, започваме с присвояване на стойността на датата на променливата d, след което създаваме масиви (Array) за дните от седмицата (day) и месеците (month), като ги определяме в необходимата граматична форма: регистър, число, главна буква, ако дума се появява в началото на датата и т.н. .P. Последният ред на скрипта е действителното отпечатване на датата (document.write). Тук задавате какво и в какъв ред ще показвате в текущия ред с дати. Компонентите са разделени един от друг със знак +. За въвеждане на интервал използвайте конструкцията " ", а за въвеждане на буквата g (година) използвайте конструкцията " g ".

Както можете да видите от скрипта, получаването на данни за текущото време се извършва от елемента get. Този метод ви позволява да получите следната информация:

  • getDate() - връща число от 1 до 31, представляващо деня от месеца;
  • getDay() - връща деня от седмицата като цяло число от 0 (неделя) до 6 (събота);
  • getMonth() - връща номера на месеца в годината;
  • getFullYear() - връща годината. Ако просто използвате getYear(), ще се покаже текущата година минус 1900;
  • get Hours() - връща часа от деня;
  • getMinutes() - връща минути като число от 0 до 59;
  • getSeconds() - връща броя секунди от 0 до 59.

Не винаги е удобно да вмъкнете Java скрипт директно в страница на уебсайт. По-добре е да поставите описанието на скрипта в началото на страницата между таговете и да зададете променлива, която ще извикваме според нуждите в текста. Нека го наречем ДНЕС и дефинираме в него формата за извеждане на дата, подобна на горната. Скриптът ще изглежда така:


За да изведете датата, извикайте скрипта на желаното място в HTML кода на страницата, като използвате следната команда:


document.write(ДНЕС);

Ако вашият сайт съдържа много страници, на които трябва да покажете датата, тогава е по-удобно да отделите Java скрипта за показване на датата в отделен файл, например data.js. На практика това е страница, състояща се от първия от описаните скриптове, тоест с реда document.write (виж по-горе). Тя трябва да се намира в същата директория като главната страница и да се извиква на мястото, където се показва датата, както следва:


Не забравяйте да проверите дали файлът data.js има същото кодиране като основния документ, в противен случай датата ще бъде показана с прекрасни кукички, квадратчета и други трикове.

Коментирайте.Трябва да се има предвид, че описаният скрипт показва датата, зададена на компютъра на потребителя, която не винаги съответства на реалното текущо време. Ако трябва да покажете точния час, тогава трябва да използвате PHP скрипт, който ще покаже часа на сървъра.

Използвайте new Date(), за да създадете нов обект Date, съдържащ текущите дата и час.

забележи, чеДата() извикан без аргументи е еквивалентен нанова дата (Date.now()) .

След като имате обект за дата, можете да използвате някой от няколкото налични метода, за да извлечете неговите свойства (например getFullYear(), за да получите 4-цифрената година).

По-долу са някои често срещани методи за дата.

Вземете текущата година var year = (new Date()).getFullYear(); console.log(година); // Примерен резултат: 2016 Вземете текущия месец var month = (нова дата()).getMonth(); console.log(месец); // Примерен резултат: 0

Имайте предвид, че 0 = януари. Това е така, защото месеците варират от 0 преди 11 , така че често е желателно да добавите +1 към индекса.

Вземете текущия ден var day = (нова дата()).getDate(); console.log(ден); // Примерен изход: 31 Вземете текущия час var hours = (new Date()).getHours(); console.log(часове); // Примерен изход: 10 Вземете текущите минути var minutes = (new Date()).getMinutes(); console.log(минути); // Примерен изход: 39 Вземете текущите секунди var seconds = (new Date()).getSeconds(); console.log(втори); // Примерен изход: 48 Получаване на текущи милисекунди

За да получите милисекунди (от 0 до 999) на екземпляр на обект Date, използвайте метода getMilliseconds.

Var milliseconds = (нова дата()).getMilliseconds(); console.log(милисекунди); // Изход: милисекунди в момента

Преобразуване на текущия час и дата в четим от човека низ var now = new Date(); // конвертиране на дата в низ във формат на часовата зона UTC: console.log(now.toUTCString()); // Изход: сряда, 21 юни 2017 г. 09:13:01 GMT

Статичният метод Date.now() връща броя милисекунди, изминали от 1 януари 1970 г., 00:00:00 UTC. За да получите броя милисекунди, изминали оттогава, като използвате екземпляр на обект Date, използвайте неговия метод getTime.

// получаваме милисекунди, използвайки статичен метод сега на Date console.log(Date.now()); // получаваме милисекунди с помощта на метода getTime на екземпляр на Date console.log((new Date()).getTime());

Здравейте всички!
Често ми се налага да работя със статистически данни и голяма част от тях са свързани с дати. Освен това една и съща дата може да се използва на страница в различни формати (например във формат, удобен за машината, и във формат, удобен за хора). Мисля, че повечето от вас са добре запознати с целия ужасяващ код, който излиза от използването на обекта Date.
Например, за да получим текущата дата във формат ДД.ММ.ГГГГ трябва да направим следното:
var d = new Date(), fd = d.getDate() + "." + (d.getMonth()+1) + "." + d.getFullYear();
И кога стават много такива линии? Лесно ли се помни, че в JavaScript месецът започва от нула, когато се развива не само в него? Или фактът, че тук има милисекунди, а не секунди, както почти навсякъде в бекенда? Можете да разрешите някои проблеми с популярната библиотека Moment.js, но тя работи много бавно.
Въпросната библиотека решава тези проблеми.
Ако се интересувате, предлагам ви да прочетете това кратко ревю.

TempusJS съдържа много синтактична захар върху обекта Date, така че е много бърз. Синтаксисът на самата библиотека е много прост. Например, можете да напишете предишния пример така:
var fd = tempus().format("%d.%m.%Y");
Сега за скоростта. В спойлера можете да видите сравнение на Tempus с Moment и естествения начин за форматиране на датата (вижте по-горе):

Сравнение на родния JS, MomentJS и TempusJS

Вземете текущата дата Native JS x 2,175,575 ops/sec ±0,75% (96 изпълнения на проби) Момент x 284,864 ops/sec ±0,85% (96 проби) Tempus x 2,086,081 ops/sec ±0,73% (97 изпълнения на проби) Форматиране на Native JS x 1,637,517 ops/sec ±0,61% (100 извадки) Момент x 8,808 ops/sec ±1,07% (100 извадки) Tempus x 942,815 ops/sec ±0,68% (94 извадки) Автоматично откриване на дата и анализ на Native JS x 11,204,316 ops/sec ±0,81% (88 изпълнения на проби) Момент x 38 511 ops/sec ±1,41% (95 проби) Tempus x 93 973 ops/sec ±1,06% (85 проби) Формат на анализ на дата Момент x 46 293 ops/sec ±0,63 % (100 проби) Tempus x 109 947 ops/sec ±0,93% (99 проби) Момент на анализиране и валидиране x 44 588 ops/sec ±1,09% (90 проби) Tempus x 103 439 ops/sec ±0,90% (94 проби) )
Резултатите са получени на моя лаптоп в Google Chrome 30.0.1599.114. В други браузъри резултатите се различават, но съотношението остава приблизително същото.
За тестове е използвана библиотеката benchmark.js
Бенчмаркове за други функции, можете да видите.

И така, предимствата на тази библиотека могат да бъдат записани по следния начин:

  • Поддържа IE6+, Chrome, Firefox, Opera;
  • Поддържа вериги за обаждания;
  • Месеците могат да започват с 1 (по подразбиране), а не с нула;
  • Милисекундите могат да бъдат деактивирани (по подразбиране) или активирани;
  • Бърза работа (Тъй като в много случаи се използва собственият обект Date на браузъра, чиято реализация е написана на по-бързи езици);
  • Поддържа потребителски формати и добавки
  • Валидирането на датата е много бързо и зависи само от функциите, които задават датата (тъй като валидирането се извършва при въвеждане на стойностите и не се изчислява отделно);
  • Многоезично и автоматично откриване на езика на потребителя.

Тук ще говорим само за някои от функциите.

Форматиране и парсване

И така, първо, още един пример за форматиране на дата. Тук също използваме верижно обаждане. В края на всяка настройка на стойността получаваме обект TempusDate, който можем да използваме по-нататък във веригата. Пример:
tempus(). // получаване на нова дата calc((месец: -1)). // намали го с един месец format("%d.%m.%Y"); // Изход като низ
Така ще получим същия ден, час и секунда, но преди месец. Това може да бъде полезно за получаване на отчети за последния месец.

Следващият пример е разбор на дата.
// Връщане на TempusDate обект с дата "2013-11-18" tempus("11/18/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-11-05" tempus("05.11.2013").format("%Y-%m-%d"); // Или така // "Октомври, 12" tempus("2013-10-12 12:31:01", "%Y-%m-%d %H:%M:%S").format(" % B, %d");

Можете също да използвате локализация за форматиране. По подразбиране ще бъде избран езикът на потребителя (взет от браузъра) или езикът по подразбиране, ако езикът на потребителя не е намерен сред наличните езици на Tempus.
// Задаване на езика tempus.lang("ru"); // Използваме формат като стандарт // "Ноември, 05" tempus(1383609600).format("%B, %d");
В момента има само два езика - руски и английски, така че ще се радвам да помогна.

Валидиране Валидирането на дата става по следния начин:
// Връща false tempus("08/32/2013", "%d.%m.%Y").valid(); // Връща истински tempus("00:00 01/01/2012", "%H:%M %d.%m.%Y").valid();

В случай на грешка можете да видите полетата, в които е възникнала - навсякъде, където стойността не е false:
// Връщане ("year":-5,"month":false,"day":false,"hours":false, // "minutes":false,"seconds":false,"milliseconds":false) темп (). година (-5). // задаваме година=-5, т.е. невалидни грешки(); // получаваме обект с грешки

Диапазони от дати Понякога трябва да получим броя години (например възраст), месеци, дни и т.н. между две дати. За да направим това, можем да използваме метода между, който намира разликата между две дати и я връща в желания формат ("година", "месец", "ден", "часове", "минути", "секунди", "милисекунди").
Ето прост пример за получаване на броя на месеците между 1 ноември 2013 г. и 5 май 2014 г.:
// Връща 6 tempus().between(tempus(), "month");
Или колко часа остават до новата година
tempus().between(tempus(), "часове");
В последния пример ще забележите, че посочих само годината. Когато задавате стойност от масив или обект, липсващите стойности ще бъдат
изпълнен с минимален Можете да видите списък с константи с минимални стойности в документацията.

Също така можем да променим всяка дата с помощта на функцията calc:
// Връща TempusDate с дата 2012-01-01 tempus().calc((година: 1, месец: -4, ден: -1));

Персонализирани формати Ние прилагаме собствен формат за месеца, който може да приема стойности от 1 до 12 (не от 01 до 12):
// Регистриране на нов формат tempus.registerFormat("%q", // директива - %q функция(дата) ( // Тук посочваме функцията за форматиране, т.е. какво ще бъде заменено за %q return date.month(); ), функция(стойност) ( ​​// И тук е функцията за синтактичен анализ var v = Number(стойност); return (месец: (isNaN(v) ? undefined: v) ); ), 1, // Минималната дължина тази стойност 2 може да приеме, // Максимална дължина "номер" // Тип); // Тест // Връщане на "01.1.2013"; tempus((година: 2013, месец: 1, ден: 1)).format("%d.%q.%Y"); // Връщане ("година":2013,"месец":2,"ден":10,"часове":0,"минути":0,"секунди":0); tempus("10.2.2013", "%d.%q.%Y").get();
По време на регистрация може да забележите, че някои параметри са зададени отделно, докато може да се използва регулярен израз. Всъщност първоначално го имаше, но след изоставянето му скоростта се увеличи няколко десетки пъти.
Ако трябва да премахнете формат, използвайте unregisterFormat:
tempus.unregisterFormat("%d"); // Връща "%d.01.2013", защото Директивата %d вече не съществува. tempus.format((година: 2013, месец: 1, ден: 1), "%d.%m.%Y"); Getters/setter Можете да получите/зададете някои стойности с помощта на функциите year(), month(), day(), hours(), minutes(), seconds(), milliseconds(), dayOfWeek(), utc() , timestamp() или set(). Например:
tempus(). // Вземете текущата дата година (1900). // Оставете всичко както е, но задайте годината на 1900 leapYear(); // Проверете дали е високосна година, в този случай false tempus().year(); // И така получаваме текущата година в числова форма Генериране на дати Можете да генерирате дата по много начини, пълен списъкпараметрите са в документацията. Ето един минимален пример.
// връща ["03/29/2013", "03/30/2013", "03/31/2013", "04/01/2013", "04/02/2013"]; tempus.generate(( dateFrom: "20130329", formatFrom: "%Y.%m.%d", dateTo: "20130402", период: (ден: 1), формат: "%d.%m.%Y" ));
Това може да бъде полезно за показване на графики по дата и промяна на формата на дисплея директно на клиента, без заявки към бекенда. Датата може да се генерира като масив или като обекти, където самите дати ще бъдат ключовете (това е полезно, когато трябва да обвържем събитие с дата, например, когато си правим собствен календар). Освен това датите могат да бъдат групирани по дни, седмици, месеци, часове, години - по всичко. Това може да се приложи и към календара Плъгини И не на последно място, плъгини. Тук разширяваме фабриката, за да генерираме произволна дата. Освен това се нуждаем от класа TempusDate, той може да бъде намерен в tempus.classes(). Ето примерен плъгин:
(функция (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)).минути(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)); дата на връщане; ); ))(tempus); // Сега можем да създаваме дати като тази var someRandomDate = tempus.randomDate();
Мисля, че по този начин ще бъде възможно удобно да се пишат уиджети, като се използва комбинация от jQuery+Tempus, Angular+Tempus и т.н. Източници Можете да ги инсталирате, като изтеглите източниците от GitHub:
https://github.com/crusat/tempus-js/releases
Или чрез bower:
$ bower инсталирайте tempus
Трябва ви само един файл - tempus.js или tempus.min.js.

Надявам се, че тази библиотека ще бъде полезна, а също така би било интересно да разберем какво липсва в нея, за да развием библиотеката в правилната посока. Благодаря за вниманието!
P.S. Благодаря за поканата!



Свързани статии: